Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ライトニングネットワーク 技術基礎と今後の見通し

Takaya Imai
February 21, 2019

ライトニングネットワーク 技術基礎と今後の見通し

ライトニングネットワーク Lightning Network

Takaya Imai

February 21, 2019
Tweet

More Decks by Takaya Imai

Other Decks in Technology

Transcript

  1. ϏοτίΠϯͷ εέʔϦϯά໰୊ εέʔϦϯά໰୊ ඵؒऔҾ਺͕̓݅ఔ౓ 1MB / 256byte /10෼/60ඵ = 6.8औҾຖඵ

    Segwit (Segregated Witness)༗ޮԽޙɺ̍ϒϩοΫʹ̍MBΑΓೖΔΑ͏ʹͳͬͨͨΊɺඵؒऔҾ਺ ͸લΑΓվળ ϒϩοΫνΣʔϯαΠζͷ૿େ ̎̌̌GB (2019/2/21ݱࡏ) τϥϯβΫγϣϯख਺ྉͷߴಅ ૹ෇͞ΕΔτϥϯβΫγϣϯͷ਺͕૿͑ΔͱɺϚΠφʔ͸ΑΓख਺ྉͷߴ͍τϥϯβΫγϣϯ͔Β ϒϩοΫʹऔΓࠐ΋͏ͱ͢Δ ࠷ۙ͸̍ճͷૹۚ͋ͨΓ30ԁఔ౓ 2017೥12݄͸ϐʔΫͰ̍ճͷૹۚ͋ͨΓ4000ԁఔ౓ͷͱ͖΋͋ͬͨ
  2. ϏοτίΠϯͷ εέʔϦϯά໰୊ εέʔϦϯά໰୊ ඵؒऔҾ਺͕̓݅ఔ౓ 1MB / 256byte /10෼/60ඵ = 6.8औҾຖඵ

    Segwit (Segregated Witness)༗ޮԽޙɺ̍ϒϩοΫʹ̍MBΑΓೖΔΑ͏ʹͳͬͨͨΊɺඵؒऔҾ਺ ͸લΑΓվળ ϒϩοΫνΣʔϯαΠζͷ૿େ ̎̌̌GB (2019/2/21ݱࡏ) τϥϯβΫγϣϯख਺ྉͷߴಅ ૹ෇͞ΕΔτϥϯβΫγϣϯͷ਺͕૿͑ΔͱɺϚΠφʔ͸ΑΓख਺ྉͷߴ͍τϥϯβΫγϣϯ͔Β ϒϩοΫʹऔΓࠐ΋͏ͱ͢Δ ࠷ۙ͸̍ճͷૹۚ͋ͨΓ30ԁఔ౓ 2017೥12݄͸ϐʔΫͰ̍ճͷૹۚ͋ͨΓ4000ԁఔ౓ͷͱ͖΋͋ͬͨ
  3. ͍Ζ͍Ζͳղܾࡦ ΦϯνΣʔϯଆ ผͷϒϩοΫνΣʔϯʹॲཧΛԡ͠΍Δ αΠυνΣʔϯ/υϥΠϒνΣʔϯ τϥϯβΫγϣϯͷσʔλͷҰ෦Λผ࿮ʹԡ͠΍Δ SegWit (Segregated Witness) ϒϩοΫαΠζΛେ͖͘͢Δ ϏοάϒϩοΫ

    ϒϩοΫͷ఻ୡํ๏ͷվળɺGraphen τϥϯβΫγϣϯͷαΠζΛখ͘͢͞Δ γϡϊΞॺ໊(Schnorr Signature) ࢖Θͳ͍τϥϯβΫγϣϯεΫϦϓτΛল͘ɺ Graftroot ະ࢖༻τϥϯβΫγϣϯΞ΢τϓοτҎ֎Λ࡟আ͢Δ uTreexo MimbleWimble (grin, beam) … ΦϑνΣʔϯଆ ϥΠτχϯάωοτϫʔΫ Ethereum(ϥΠσϯωοτϫʔΫɺϚΠΫϩϥΠσ ϯ)
  4. #MPDLDIBJO DPOOFDUFEUP #JUDPJO ;DBTI #MPDLDIBJO &UIFSFVN #MPDLDIBJO #JUDPJO #MPDLDIBJO ʜ

    -JHIUOJOH/FUXPSL "UPNJD 4XBQ 1BZQBM 7JTB $SPTT#MPDLDIBJO #MPDLDIBJO DPOOFDUFEUP TPNF CMPDLDIBJOT 3BJEFO/FUXPSL ΦϯνΣʔϯଆ ΦϑνΣʔϯଆ 4JEFDIBJO ϒϩοΫνΣʔϯ֎ ֤ٕज़ͷؔ࿈Πϝʔδ *OUFSMFEHFS
  5. ϥΠτχϯάωοτϫʔ Ϋʁ ૹۚऀ डۚऀ "MJDF #PC $BSPM $BSPM ϓϨΠϝʔδϋογϡ )

    ᶃϓϨΠϝʔδϋογϡ)ૹ෇ UYXJUI) OFFE3 UPVTF UYXJUI) OFFE3 UPVTF ᶄ59XJUI)ૹ෇ UYXJUI) OFFE3 UPVTF ᶅ59XJUI)ૹ෇ ᶆϓϨΠϝʔδ3ૹ෇ 3 ᶇϓϨΠϝʔδ3ૹ෇ 3 $BSPM ϓϨΠϝʔδ 3 ໿ଋ͸͢Δ͚Ͳ౪Ίͳ͍ Carol͸ R͕͋Δ͔Β ड͚औΕΔ
  6. ϥΠτχϯάωοτϫʔ Ϋʁ ϊʔυ ϊʔυ ϊʔυ*% ϊʔυ νϟωϧ ϊʔυ νϟωϧ νϟωϧ

    νϟωϧ ϊʔυ ϊʔυ*% ϊʔυ*% ϊʔυ*% ϊʔυ νϟωϧ ϊʔυ*% νϟωϧ ϊʔυ ϊʔυ*% ͷେ͖͞͸νϟωϧʹ৐͍ͬͯΔϏοτίΠϯͷྔ
  7. ϚΠΫϩϖΠϝϯτ vs ΫϨδοτΧʔυ w ̍औҾ͋ͨΓԁະຬ਺ඦԁҎ্ w ख਺ྉະຬҎ্ w શੈքͰඵؒԯऔҾҎ্ඵؒສऔҾҎԼ w

    ݱۚ ϏοτίΠϯ औҾϙΠϯτͳͲൃߦओମͷ %#্ͷ਺ࣈ w ύϒϦοΫ11ωοτϫʔΫൃߦओମ͕ఏڙ͢Δ αʔό
  8. தԝूݖతͳ΋ͷ $FOUSBMJ[FE  WT ඇதԝूݖతͳ΋ͷ %FDFOUSBMJ[FE w কདྷతʹ͜ΕΒ͸ɺಘҙ෼໺͝ͱʹ෼͔Εͯଘࡏ͍ͯ͘͠ w $FOUSBMJ[FE

    w ϢʔβαϙʔτΛඞཁͱ͢Δ w தԝʹΑΔݫ֨ͳ؂ࢹମ੍Λඞཁͱ͢Δ w %FDFOUSBMJ[FE w །Ұͷ؅ཧओମΛඞཁͱ͠ͳ͍ w ΦʔϓϯιʔεϓϩδΣΫτ w ͲͪΒ͕͍͍͔ͱࢥ͏͔͸ਓͦΕͧΕɻࠓ·Ͱ͸΄΅தԝूݖతͳ΋ͷ͔͠ͳ͔ͬͨɻݸਓ͕উखʹબ΂Δ Α͏ʹͳΔͷ͕Α͍ঢ়ଶɻ w ൿີ伴ΛݸʑͰ؅ཧ͢Δͷ͕҉߸௨՟ͷجຊతͳߟ͑ํ w ͔͠͠ݱ࣮͸ɺ༬͔Γࢿ࢈ͷݫ֨ͳ؂ࢹମ੍͕ෑ͔Εͨɺ·ͨ͸อݥ౳͕੔උ͞ΕͨԾ૝௨՟औҾॴʹ ࢿۚΛஔ͖ɺ؅ཧΛҕୗ͍ͨ͠ਓ΋͍Δ
  9. தԝूݖతͳ΋ͷ $FOUSBMJ[FE  WT ඇதԝूݖతͳ΋ͷ %FDFOUSBMJ[FE w ϥΠτχϯάωοτϫʔΫͷΑ͏ͳηΧϯυϨΠϠʔʹ͠ ͯ΋҉߸௨՟ͱಉ༷ʹɺશͯͷϊʔυ͕ର౳ͳཱ৔ʹ͋Δ ωοτϫʔΫΛ໨ࢦ͢΂͖

    w ͔͠͠ɺϥΠτχϯάεϚϗΞϓϦ༻ͷऔҾ؂ࢹͳͲதԝ ूݖతͳ΋ͷ͕͋Δఔ౓ࠞ͡Δͷ͸࢓ํ͕ͳ͍͠ɺ͕͜͜ ·ͩ͜ͷੈքʹଘࡏ͠ͳ͍࣍ͷऩӹݯʹͳΔՄೳੑ͕͋Δ w ͨͩ͠ɺதԝूݖతͳ΋ͷͱඇதԝूݖతͳ΋ͷΛݸਓ͕ બ΂Δͱ͍͏ͷ͕ॏཁ
  10. ϕʔγοΫΠϯΧϜʁ w ݸਓࢿຊओٛ΁Ҡߦ w ࢿຊओٛࣗ෼͕͍࣋ͬͯΔٕज़·ͨ͸౔஍ͳͲΛجʹ͓ͯۚ͠ΛՔ͍ Ͱ΋Α͍ͱ͢Δߟ͑ํ ʮαϐΤϯεશ࢙ʯΑΓ  w Χʔετ੍౓ͷΑ͏ͳ৬ۀݻఆͱͷରൺ

    w ࠓ·Ͱେ͖ͳࢿۚΛ࣋ͪ޻৔Λ࣋ͯΔऀ͚͕ͩػցʹΑΔརӹੜΈग़͕͠ Ͱ͖ͨ w Ϋϥ΢υαʔϏεɺϋʔυ΢ΣΞ BSEVJOPͳͲ ͕҆Ձʹͳ͖ͬͯͨத Ͱɺࠓ·ͰͷΑ͏ʹେ͖ͳࢿۚΛ࣋ͭऀ͚͕ͩػցʹΑΔརӹੜΈग़͕͠ Ͱ͖Δͱ͍͏ͷ͸มΘ͍ͬͯ͘ͷͰ͸ͳ͍͔ w ϕʔγοΫΠϯΧϜͷΑ͏ʹɺϚΠχϯάͰͷίϯηϯαεߏ੒ߩݙɺϥΠ τχϯάωοτϫʔΫͷߏ੒ߩݙɺτʔΫϯΤίϊϛʔͳͲʹΑͬͯɺݸਓ ͷऩೖݯ͕ଟ༷Խ͍ͯ͘͠ͷͰ͸ͳ͍͔
  11. ϥΠτχϯάωοτϫʔΫ ϊʔυϓϩδΣΫτҰཡ $PNQBOZ 0SHBOJ[BUJP O -JHIUOJOH -BCT .*5%$* #MPDLTUSFB N

    "$*/2 CDPJOPSH /BZVUB #JUGVSZ 1SPEVDU /BNF MOE MJU MJHIUOJOHE FDMBJS QMBTNB QUBSNJHBO MQE MOXBMMFU #MVFXBMMFU $PNNJUPST 0MBPMVXB 0TVOUPLVO  $POOFS 'SPNLOFDIU 5IBEEFVT %SZKB  7BSVOSBN (BOFTI 3VTUZ 3VTTFM  $ISJTUJBO %FDLFS 1JFSSF.BSJF 1BEJPV  'BCSJDF %SPVJO  EQBE $ISJTUPQIFS +F⒎SFZ OBZVUBVFOP  OBZVUB HPOEP 7MBEJTMBW .FMOJL NLM  &WHFOJZ 4DIFSCJOB "OUPO ,VNBJHPSPE TLJ *HPS ,PSTBLPW  -BOHVBHF (P (P $ 4DBMB /PEFKT $ 3VTU 4DBMB /PEFKT pSTUDPNNJU +45          NBTUFS MBTUFTU DPNNJU +45          HJUIVC IUUQT HJUIVCDPN MJHIUOJOHOFU XPSLMOE IUUQT HJUIVCDPN NJUEDJMJU IUUQT HJUIVCDPN &MFNFOUT1SP KFDU IUUQT HJUIVCDPN "$*/2FDMBJS IUUQT HJUIVCDPN CDPJOPSH QMBTNB IUUQT HJUIVCDPN OBZVUBDP QUBSNJHBO IUUQT HJUIVCDPN -JHIUOJOH1FB DIMQE IUUQT HJUIVCDPN CUDPOUSBDU MOXBMMFU IUUQT HJUIVCDPN #MVF8BMMFU #MVF8BMMFU PUIFST BOESPJEBQQ "OESPJE J04
  12. ֊૚ߏ଄ରԠؔ܎ Blockchains Lightning Payment Channel Routing Algorithm Atomic Multi-Path Payments

    ??? ෺ཧ૚ ϦϯΫ૚ ωοτϫʔΫ૚ τϥϯεϙʔτ૚ ΞϓϦέʔγϣϯ૚ Sphinx ϓϨθϯςʔγϣϯ૚ ϥΠτχϯά Πϯλʔωοτ HTLC ηογϣϯ૚
  13. ஫໨͍ͯ͠Δ ϥΠτχϯάٕज़΍ϓϩδΣΫτ Atomic Multi-Path Payments(ෆՄ෼ͳෳ਺ܦ࿏ࢧ෷͍ɺϥΠτχϯάωοτϫʔΫඇதԝूݖԽ/ଟֹૹۚ) eltoo(νϟωϧߋ৽ͷγϯϓϧԽ) Splicing(νϟωϧσϙδοτͷಈతมߋ) Outsourcing WatchTower (τϥϯβΫγϣϯ؂ࢹͷ֎෦Խ/ҕୗ)

    Olympus Server(νϟωϧঢ়ଶͷόοΫΞοϓ෼ࢄҕୗͱҕ೚ΠϯηϯςΟϒઃܭɺϖΠϝϯτϧʔτҕୗ) Atomic Swap(ϥΠτχϯάΛ࢖ͬͨϒϩοΫνΣʔϯؒෆՄ෼ίΠϯަ׵) Streaming Payments (ϥΠτχϯάૹۚͷ͞ΒͳΔޮ཰ԽɺૹۚϧʔτҰճҰճดͣ͡ʹϧʔτΛ࢖͍ճ͢) xCrow Protocol (ΦϑνΣʔϯٕज़Λ༻͍ͨDEX(ඇதԝूݖతऔҾॴ)ߏ੒ٕज़) ੥ٻॻͳ͠ͷϥΠτχϯάϖΠ spontaneous payments without invoice
  14. ஫໨͍ͯ͠Δ ϥΠτχϯάٕज़̍ AMP: Atomic Multi-Path Payments(ෆՄ෼ͳෳ਺ܦ࿏ࢧ෷͍) ݱঢ় ૹۚऀ͔Βडۚऀ΁ͷૹۚܦ࿏͸̍ͭ ྫ͑͹ɺ100ԁΛૹΓ͍ͨ৔߹ɺૹۚऀ͔Βडۚऀ΁ͷܦ࿏ͷશͯͷνϟωϧ͕100ԁૹۚՄೳͰͳ͍ͱ ͍͚ͳ͍

    ໰୊఺ ·ͱ·͓ͬͨۚΛૹΕͳ͍ ̍ສԁͳͲ͋Δఔ౓·ͱ·͓ͬͨۚ͸ɺϥΠτχϯάωοτϫʔΫΛ࢖Θͳ͍΄͏͕͍͍ͱ͸ࢥ͍ ·͢ νϟωϧʹଟ͘ͷ͓ۚΛஔ͍͓ͯ͘ͷ͸ࢿ͕ۚ๛͔ͳਓ -> தԝूݖԽ 1ͭͷૹۚܦ࿏ʹґଘͯ͠͠·͏ ૹۚܦ࿏্ͷϊʔυ͕ૹۚதʹ൓Ԡ͠ͳ͘ͳΔͳͲ໰୊͕ى͖ͨ৔߹ɺૹ్͕ۚதͰࢭ·ͬͯ͠ ·ͬͯಈ͔ͳ͘ͳΔͱ͍͏͜ͱ͸ͳ͍͕ɺૹۚ׬ྃ·Ͱ͕͔͔࣌ؒͬͯ͠·͏
  15. ஫໨͍ͯ͠Δ ϥΠτχϯάٕज़̍ AMP: Atomic Multi-Path Payments(ෆՄ෼ͳෳ਺ܦ࿏ࢧ෷͍) ղܾํ๏ ̍ճͷૹۚΛɺෳ਺ͷૹۚܦ࿏ʹ෼ׂͯ͠ૹΔ ྑ͍఺ ૹۚܦ࿏ͷબ୒ࢶ͕΋ͬͱ૿͑ɺϥΠχϯάωοτϫʔΫશମͷϦιʔεΛ͏·͘࢖͑Δ

    νϟωϧʹେ͖ͳ͓ۚΛஔ͍͓͔ͯͳͯ͘΋ɺϥΠτχϯάωοτϫʔΫʹߩݙͰ͖Δ ѱ͍఺ ϥΠτχϯάωοτϫʔΫશମͰͷૹۚॲཧ਺͸૿͑ΔͨΊɺ෼ׂ਺Λେ͖͗͘͢͠ΔͱϥΠτ χϯάωοτϫʔΫ͕๞࿨ͯ͠͠·͏