Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Atomic_Multi-Path_Payment.pdf
Search
bruwbird
March 15, 2019
Technology
0
110
Atomic_Multi-Path_Payment.pdf
Atomic_Multi-Path_Payment
bruwbird
March 15, 2019
Tweet
Share
More Decks by bruwbird
See All by bruwbird
Discreet Log Contracts
bruwbird
1
210
Other Decks in Technology
See All in Technology
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
3
1.2k
Building a cloud native business on open source
lizrice
0
140
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
AI AgentをLangflowでサクッと作って、1日働かせてみた!
yano13
1
100
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
190
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
150
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
10
5.2k
「魔法少女まどか☆マギカ Magia Exedra」の多様なバトルの開発を柔軟かつ効率的に実現するためのPure C#とUnityの分離について
gree_tech
PRO
0
230
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2.1k
フレームワークを意識させないワークショップづくり
keigosuda
0
230
旅で応援する✈️ NEWTが目指すコミュニティ支援とあたらしい旅行 / New Travel: Supporting by NEWT on Your Journey
mii3king
0
120
Featured
See All Featured
A better future with KSS
kneath
239
18k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Fireside Chat
paigeccino
40
3.7k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Transcript
"UPNJD.VMUJ1BUI 1BZNFOUTPWFS-JHIUOJOH גࣜձࣾϝϧϖΠਗ਼ਫ༐հ
࣍ w ࣗݾհ w "UPNJD.VMUJ1BUI1BZNFOUT֓ཁ w ͳͥ*OWPJDFܾࡁͳͷ͔ w "UPNJD.VMUJ1BUI1BZNFOUʹΑΔղফ w
·ͱΊ
ࣗݾհ w גࣜձࣾϝϧϖΠΤϯδχΞ w ҉߸ࢿ࢈ͷۀΛߦ͍ͬͯ·͢
"UPNJD.VMUJ1BUI 1BZNFOUT֓ཁ w ෳͷ-/νϟωϧΛར༻ͨ͠ΞτϛοΫͳܾࡁΛՄೳʹ ͢Δٕज़Ͱ͢ɻ w *OWPJDFܾࡁ͔͠Ͱ͖ͳ͔ͬͨ-JHIUOJOH/FUXPSLʹ͓͍ ͯɺTFOEQBZNFOUΛՄೳʹ͠·͢ɻ w IVCͷՉԽΛ͗·͢ɻ
"UPNJD.VMUJ1BUI 1BZNFOUT֓ཁ w ݄̎ʹ։ൃऀϝʔϦϯάϦετʹߘ w ݄̍ʹΫϥΠΞϯτιϑτΣΞ-/%ʹQVMM SFRVFTUՃ w ςετωοτͰํ͕࣮͍ͯ͠Εར༻Մೳ w
#0-5ͷՃWFSͷ༧ఆ
ͳͥ*OWPJDFܾࡁͳͷ͔ w -JHIUOJOH/FUXPSLJOWPJDFܾࡁ͔͋͠Γ·ͤΜɻ w ओମతʹૹۚ͢Δ͜ͱ͕Ͱ͖ͳ͍ঢ়ଶͰ͢ɻ 1BZϘλϯΛԡ͢ *OWPJDFͷೖྗ͕ٻΊΒΕΔ ʢόʔίʔυϦʔμʔՄೳʣ ֹ͕ۚදࣔ͞Εɺࢧཱ͍͕͢Δ
ͳͥ*OWPJDFܾࡁͳͷ͔ " # #ެ։伴ɺ6590 Φʔϓχϯά59 */ɿ"ʢॺ໊ࡁʣɹᶇ 065ɿ"#NVMUJTJHɹᶌ ίϛοτϝϯτ59 */ɿ"#NVMUJTJHɹᶌ 065ɿ"ɹᶆ
065ɿᶈ ᶃ$47# ᶄ4FDSFU#ʴ" ϒϩʔυΩϟετ "ɺ#ͷํQBZNFOUDIBOOFM 4FDSFU)BTI" ίϛοτϝϯτ59 */ɿ"#NVMUJTJHɹᶌ 065ɿ#ɹᶈ 065ɿᶆ ᶃ$47" ᶄ4FDSFU"ʴ# w ͭͳ͕ͬͨQBZNFOUDIBOOFMͰTFOEͰ͖·͢ɻ ίϛοτϝϯτ59 */ɿ"#NVMUJTJH 065ɿ"ɹᶊ ίϛοτϝϯτ59 */ɿ"#NVMUJTJH 065ɿ#ɹᶄ 065ɿᶄ ᶃ$47ɹ# ᶄ4FDSFU#ʴ" 065ɿᶊ ᶃ$47ɹ" ᶄ4FDSFU"ʴ# Ϋϩʔδϯά59 */ɿ"#NVMUJTJH 065ɿ"ɹᶊ 065ɿ#ɹᶄ ϒϩʔυΩϟετ DIBOOFM։ઃ ߴߋ৽ɺΫϩʔζ " # ̑ˠ̔ ̑ˠ̎ /ճ 4FDSFU)BTI# */ɿ#ɹᶇ 4FDSFU)BTI"̎ 4FDSFU)BTI#̎ 4FDSFU"̍ 4FDSFU#̍ Φʔϓχϯά59Λ*/ʹ͢Δ ͜ͱͰɺඞͣࢿۚΛऔΓग़ ͤΔঢ়ଶͱ͢Δ 4FDSFUΛަ͍ͯ͠ΔͨΊɺ աڈͷ59Λෆਖ਼ʹެ։͢Δ ͱ$47·Ͱʹͯ͢ͷߴ ΛऔΒΕΔ
ͳͥ*OWPJDFܾࡁͳͷ͔ w NVMUJIPQQBZNFOUͷ߹ɺJOWPJDFࣜʹݶΒΕ·͢ɻ ࢧ͍อূʢ"ͱ#ɺ#ͱ$νϟωϧ։ઃࡁʣ γʔΫϨοτͷϋογϡ3ͷަ γʔΫϨοτͷϋογϡ3ͷަ " # ̍̌ˠ̕ /ճ
$ ̑ˠ̒ /ճ 4FDSFU)BTI"̎ 4FDSFU)BTI#̎ ίϛοτϝϯτ59 */ɿ"#NVMUJTJHɹᶎ 065ɿ"ɹᶋ 065ɿᶄ ᶃ$47ɹ# ᶄ4FDSFU#ʴ" 065ɿᶃ ᶃ$47ɺTFDSFU3ɺ# ᶄ4FDSFU#ʴ" ᶅ$-57ɺ" ίϛοτϝϯτ59 */ɿ"#NVMUJTJHɹᶎ 065ɿ#ɹᶄ 065ɿᶋ ᶃ$47ɹ" ᶄ4FDSFU"ʴ# 065ɿᶃ ᶃTFDSFU3ɺ# ᶄ4FDSFU"ʴ# ᶅ$-57ɺ$47ɺ" 4FDSFU"̍ 4FDSFU#̍ 4FDSFU)BTI#̎ 4FDSFU)BTI$̎ ίϛοτϝϯτ59 */ɿ#$NVMUJTJHɹᶌ 065ɿ#ɹᶆ 065ɿᶇ ᶃ$47ɹ$ ᶄ4FDSFU$̏ʴ# 065ɿᶃ ᶃ$47ɺTFDSFU3ɺ$ ᶄ4FDSFU$ʴ# ᶅ$-57ɺ# ίϛοτϝϯτ59 */ɿ#$NVMUJTJHɹᶌ 065ɿ$ɹᶇ 065ɿᶆ ᶃ$47ɹ# ᶄ4FDSFU$̏ʴ# 065ɿᶃ ᶃTFDSFU3ɺ$ ᶄ4FDSFU#ʴ$ ᶅ$-57ɺ$47ɺ# 4FDSFU#̍ 4FDSFU$̍ 4FDSFU3 4FDSFU)BTI#̏ 4FDSFU)BTI$̏ ίϛοτϝϯτ59 */ɿ#$NVMUJTJHɹᶌ 065ɿ$ɹᶈ 065ɿᶆ ᶃ$47ɹ# ᶄ4FDSFU#̏ʴ$ ࢧ͍ ίϛοτϝϯτ59 */ɿ#$NVMUJTJHɹᶌ 065ɿ#ɹᶆ 065ɿᶈ ᶃ$47ɹ$ ᶄ4FDSFU$̏ʴ# 4FDSFU3 4FDSFU)BTI#̏ 4FDSFU)BTI"̎ ίϛοτϝϯτ59 */ɿ"ɹ#NVMUJTJHɹᶎ 065ɿ#ɹᶅ 065ɿᶋ ᶃ$47ɹ" ᶄ4FDSFU"̏ʴ# ίϛοτϝϯτ59 */ɿ"ɹ#NVMUJTJHɹᶎ 065ɿ"ɹᶋ 065ɿᶅ ᶃ$47ɹ# ᶄ4FDSFU#̏ʴ" " # $
"UPNJD.VMUJ1BUI 1BZNFOUʹΑΔղফ w ૹ৴ऀ͕QSFJNBHFΛ࡞͠OPOJOUFSBDUJWFʹηοτΞο ϓՄೳͱͳΓ·͢ɻ lncli --network=simnet sendpayment --dest=02788242941915ed5a101511b8dfeb6db81e0fcd7546f6a55ef4dedf590a7d7ff4 --sphinx
{ "payment_error": "", "payment_preimage": "0b1661fb77071fa5efd2217e380c93068bc3dc6e40e302673ff6373ecd8997b5", "payment_route": { "total_time_lock": 3299, "total_amt": 100, "hops": [ { "chan_id": 3610796185681920, "chan_capacity": 15000000, "amt_to_forward": 100, "expiry": 3299, "amt_to_forward_msat": 100000, "pub_key": "02788242941915ed5a101511b8dfeb6db81e0fcd7546f6a55ef4dedf590a7d7ff4" } ], "total_amt_msat": 100000 } } -/%ͰTFOEQBZNFOUΛ࣮ߦͨ͠ྫ
"UPNJD.VMUJ1BUI 1BZNFOUʹΑΔղফ w ௨৴ޙɺ௨ৗͷ.VMUJ)PQ1BZNFOUͱಉ༷ͷॲཧ͕࣮ ࢪ͞Ε·͢ɻ " # $ % "
# ̍ճ $ ̍ճ % ̍ճ ̍ճ (FOFSBUF#1 ࢧ͍ɿ̎ 4FDSFUIBTIɿT *%ɿ̍ ࢧ͍ɿ̎ 4FDSFUIBTIɿT̎ *%ɿ̍ 3PVUJOH 3PVUJOH "UPNJD.VMUJ1BUI1BZNFOUʹ#ɺ$Λհͨ͠ࢧ͍ #1ͷ෮ݩ γʔΫϨοτͷϋογϡ3ͷަ γʔΫϨοτͷϋογϡ3ͷަ Ҏ߱௨ৗͷNVMUJIPQQBZNFOU ૹ৴ऀϕʔεϓϦΠϝʔδʢ#1ʣΛੜ͠·͢ ෦తͳࢧ͍ͷ ̽ ͷγΣΞʢTʣΛαϯϓϦϯά͠ɺͦͷഉଞతཧ Λܭࢉ͢Δ͜ͱͰࢉग़͠·͢ɻ #1T?T?T??TO ?ഉଞతཧ ࢧ͍ O ɺTɺࢧ͍*%Λड৴ऀʹಧ͚Δ͜ͱͰɺதؒऀʹ෮ݩෆՄͱͳ Γ·͢ɻ
"UPNJD.VMUJ1BUI 1BZNFOUʹΑΔղফ w -JHIUOJOH/FUXPSLɺEFQPTJUֹΑΓগͳֹ͍͔͠ૹۚ Ͱ͖ͣɺIVC͕ՉԽ͢Δͱ͍͏൷͕͋Γ·͢ɻ ࣮ࡍଟ͘ͷOPEF͕USVF7JTJPODMVCʹूத͓ͯ͠ΓɺՉԽ͍ͯ͠Δɻ IUUQTFYQMPSFSBDJORDP
"UPNJD.VMUJ1BUI 1BZNFOUʹΑΔղফ w ".1ͰෳͷϧʔτͰBUPNJDʹࢧ͏ͷͰ͜ͷ͕ ղܾ͠ɺՉԽΛ͙͜ͱ͕Ͱ͖·͢ " # $ %
̎ "͕$ʹ̎ࢧ͏߹ɺ#ɺ%ϧʔτͦΕͧΕͰͣͭૹ Δ͜ͱ͕ՄೳͱͳΔɻ " # $ % ̎ "͕$ʹ̎ͷNVMUJIPQQBZNFOU͍ͨ͠߹ɺ#Ͱ DBQBDJUZ͕Γͳ͍ͷͰ%Λհ͢Δ͜ͱʹͳΔɻ%ख ྉΛऔΓɺܾࡁػؔʹ͍ۙ;Δ·͍Λߦ͏ɻ ✗ ✗ ݱࡏ ".1
·ͱΊ w ".1-JHIUOJOH/FUXPSLͷ࣋ͭ՝Λղܾ͢ΔՄೳੑͷ ͋Δٕज़ͷҰͭͰ͢ɻ w ओମతͳૹ͕ۚՄೳʹͳΓɺ͔ͭIVCͷՉԽΛ͙ͱ͍ ͏ظ͋Γ·͢ɻ w ༻ʹɺૹ৴ऀɺड৴ऀํ͕࣮͍ͯ͠Δඞཁ͕͋Γ ·͢ɻ
w ݱࡏ-JHIUOJOH-BCTͰυϥϑτ࣮͕ߦΘΕ͍ͯΔʹཹ ·Γ·͢ɻ