Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
220
Other Decks in Technology
See All in Technology
【U/Day Tokyo 2025】Cygames流 最新スマートフォンゲームの技術設計 〜『Shadowverse: Worlds Beyond』におけるアーキテクチャ再設計の挑戦~
cygames
PRO
2
1.1k
【開発を止めるな】機能追加と並行して進めるアーキテクチャ改善/Keep Shipping: Architecture Improvements Without Pausing Dev
bitkey
PRO
1
110
AI駆動開発の実践とその未来
eltociear
1
460
AgentCoreとStrandsで社内d払いナレッジボットを作った話
motojimayu
1
600
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
2
170
2025-12-18_AI駆動開発推進プロジェクト運営について / AIDD-Promotion project management
yayoi_dd
0
150
アプリにAIを正しく組み込むための アーキテクチャ── 国産LLMの現実と実践
kohju
0
170
特別捜査官等研修会
nomizone
0
520
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
580
AWS re:Invent 2025~初参加の成果と学び~
kubomasataka
0
170
SREには開発組織全体で向き合う
koh_naga
0
410
AI時代の新規LLMプロダクト開発: Findy Insightsを3ヶ月で立ち上げた舞台裏と振り返り
dakuon
0
380
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The browser strikes back
jonoalderson
0
68
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Test your architecture with Archunit
thirion
1
2.1k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
170
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Statistics for Hackers
jakevdp
799
230k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
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Ͱυϥϑτ࣮͕ߦΘΕ͍ͯΔʹཹ ·Γ·͢ɻ