Share
Embed
ライトニングネットワーク 初心者向け説明@株式会社ミクシィ様
ライトニングネットワーク 初心者向け説明@株式会社ミクシィ様
CreativeBlockchain Community~ MeetUp Vol.3
Takaya Imai
March 22, 2018
Transcript
36 slides
-
ࣗݾհ ϑϩϯςΟΞύʔτφʔζ߹ಉձࣾ දCEO United Bitcoiners Inc. ڞಉۀऀˍऔకCTO ϚελϦϯάϏοτίΠϯɺ༁ऀද ੈքͰॳΊͯͷɺຊޠʹΑΔϏοτίΠϯɾϒϩοΫ νΣʔϯͷৄࡉٕज़ॻ(NTTग़൛ࣾ)
2016/7/14ग़൛ ిࢠॻ੶൛(kindle) ΦʔϓϯΤσΟγϣϯ൛ https://www.bitcoinbook.info -
ϏοτίΠϯͷ εέʔϦϯά εέʔϦϯά ඵؒऔҾ͕̓݅ఔ 1MB / 256byte /10/60ඵ = 6.8औҾຖඵ
Segwit (Segregated Witness)༗ޮԽޙɺ̍ϒϩοΫʹ̍MBΑΓೖΔΑ͏ʹͳͬͨͨΊɺඵؒऔҾ લΑΓվળ ϒϩοΫνΣʔϯαΠζͷ૿େ ̍̒̌GBऑ (2018/3/7ݱࡏ) τϥϯβΫγϣϯखྉͷߴಅ ૹ͞ΕΔτϥϯβΫγϣϯͷ͕૿͑ΔͱɺϚΠφʔΑΓखྉͷߴ͍τϥϯβΫγϣϯ͔Β ϒϩοΫʹऔΓࠐ͏ͱ͢Δ ࠷ۙ̍ճͷૹۚ͋ͨΓ5ԁऑ(1satoshi/byte) 201712݄ϐʔΫͰ̍ճͷૹۚ͋ͨΓ4000ԁఔͷͱ͖͋ͬͨ -
͍Ζ͍Ζͳղܾࡦ ΦϯνΣʔϯଆ ผͷϒϩοΫνΣʔϯʹॲཧΛԡ͠Δ αΠυνΣʔϯ/υϥΠϒνΣʔϯ τϥϯβΫγϣϯͷσʔλͷҰ෦Λผʹԡ͠Δ SegWit (Segregated Witness) ϒϩοΫαΠζΛେ͖͘͢Δ ϏοάϒϩοΫ
ϒϩοΫͷୡํ๏ͷվળɺGraphen τϥϯβΫγϣϯͷαΠζΛখ͘͢͞Δ γϡϊΞॺ໊(Schnorr Signature) Θͳ͍τϥϯβΫγϣϯεΫϦϓτΛল͘ɺ Graftroot ΦϑνΣʔϯଆ ϥΠτχϯάωοτϫʔΫ Ethereum(ϥΠσϯωοτϫʔΫɺϚΠΫϩϥΠσϯ ωοτϫʔΫ) -
#MPDLDIBJO DPOOFDUFEUP #JUDPJO ;DBTI #MPDLDIBJO &UIFSFVN #MPDLDIBJO #JUDPJO #MPDLDIBJO ʜ
-JHIUOJOH/FUXPSL "UPNJD 4XBQ 1BZQBM 7JTB $PTNPT #MPDLDIBJO DPOOFDUFEUP TPNF CMPDLDIBJOT 3BJEFO/FUXPSL ΦϯνΣʔϯଆ ΦϑνΣʔϯଆ 4JEFDIBJO ϒϩοΫνΣʔϯ֎ ֤ٕज़ͷؔ࿈Πϝʔδ *OUFSMFEHFS -
ϥΠτχϯάωοτϫʔΫʁ جຊతͳΞΠσΞ̍ ຖճऔҾΛϒϩοΫνΣʔϯʹॻ͖ࠐΉͷͰͳ͘ɺ֤औҾͷ݁Ռͱͯ͠ਖ਼ຯͷ͓ۚΛ࠷ޙ ʹૹΔ ྫ 1. A͞Μ͕B͞Μʹ1000ԁିͨ͠ 2. B͞Μ͕A͞Μʹ500ԁ͝൧Λग़ͨ͠ 3.
݁ہɺB͞ΜA͞Μʹ500ԁฦͨ͠ ͜ΕΛͰ͖ΔΑ͏ʹ͢ΔೋऀʹΑΔ࠷খߏ୯ҐΛνϟωϧͱ͍͏ɻ νϟωϧHTLC(Hashed Time Lock Contractɺϋογϡ੍͖࣌ؒݶίϯτϥΫτ)Λͬͯ ࡞Δ ࠷ऴঢ়ଶΛϒϩοΫνΣʔϯʹॻ͖ࠐΉ·Ͱɺ྆ऀͷ߹ҙͷ্Ͱঢ়ଶͷߋ৽Λ͢Δ -
ϥΠτχϯάωοτϫʔΫʁ جຊతͳΞΠσΞ̍ νϟωϧΛ࡞ͬͨยํͷਓ͕ѱਓͰɺࣗͷૹۚΛͳ͔ͬͨ͜ͱʹ͍͕ͨͨ͠Ίʹɺ࠷ऴ ঢ়ଶͰͳ͍ͷΛҰํతʹϒϩοΫνΣʔϯʹॻ͖ࠐΜͩΒͲ͏͢Δͷʁ ࠷ऴঢ়ଶͰͳ͍τϥϯβΫγϣϯʹɺѱਓଆʹର͢Δࢿۚ༻੍࣌ؒݶ͕͔͔ͬ ͍ͯ·͢ɻ ରͯ͠ɺળਓଆѱਓଆ͔ΒΒͬͨγʔΫϨοτΩʔΛ࠷ऴঢ়ଶͰͳ͍τϥϯβ Ϋγϣϯʹରͯ͠͏ͱɺνϟωϧ্ʹ͋ͬͨѱਓͷࢿۚΛͪʹશͯୣ͑ΔΑ͏ʹ ͳ͍ͬͯ·͢ɻ γʔΫϨοτΩʔ࠷ऴঢ়ଶʹ྆ऀ͕߹ҙ͢Δࡍʹɺ྆ऀ͕औΓަΘ̍͢ݸલͷ
ͷΛແޮԽ͢ΔͨΊͷΩʔ ͜ͷΑ͏ͳϖφϧςΟʔ͕͋ΔͨΊɺѱਓଆʹ૬खΛཪΔΠϯηϯςΟϒ͕ͳ͍ ѱਓଆͷཪΓʹର͙ͯ͢͠ʹϖφϧςΟʔΛߦͰ͖ΔΑ͏ʹɺτϥϯβΫγϣϯΛৗ ʹࢹ͓͔ͯ͠ͳ͚Ε͍͚ͳ͍ -
ϥΠτχϯάωοτϫʔΫʁ ૹۚऀ डۚऀ "MJDF #PC $BSPM $BSPM ϓϨΠϝʔδϋογϡ ) ᶃϓϨΠϝʔδϋογϡ)ૹ
UYXJUI) OFFE3 UPVTF UYXJUI) OFFE3 UPVTF ᶄ59XJUI)ૹ UYXJUI) OFFE3 UPVTF ᶅ59XJUI)ૹ ᶆϓϨΠϝʔδ3ૹ 3 ᶇϓϨΠϝʔδ3ૹ 3 $BSPM ϓϨΠϝʔδ 3 ଋ͢Δ͚Ͳ౪Ίͳ͍ Carol R͕͋Δ͔Β ड͚औΕΔ -
ϥΠτχϯάωοτϫʔΫʁ ϊʔυ ϊʔυ ϊʔυ*% ϊʔυ νϟωϧ ϊʔυ νϟωϧ νϟωϧ νϟωϧ
ϊʔυ ϊʔυ*% ϊʔυ*% ϊʔυ*% ϊʔυ νϟωϧ ϊʔυ*% νϟωϧ ϊʔυ ϊʔυ*% ͷେ͖͞νϟωϧʹ͍ͬͯΔϏοτίΠϯͷྔ -
ϥΠτχϯάωοτϫʔΫ ϊʔυϓϩδΣΫτҰཡ $PNQBOZ 0SHBOJ[BUJPO -JHIUOJOH -BCT .*5%$* #MPDLTUSFBN "$*/2 CDPJOPSH
/BZVUB OPUIJOH 1SPEVDU /BNF MOE MJU MJHIUOJOHE FDMBJS QMBTNB QUBSNJHBO MOXBMMFU $PNNJUPST 5IBEEFVT %SZKB +PTFQI 1PPO 0MBPMVXB 0TVOUPLVO 5IBEEFVT %SZKB 3VTUZ3VTTFM $ISJTUJBO %FDLFS 1JFSSF.BSJF 1BEJPV 'BCSJDF %SPVJO EQBE $ISJTUPQIFS +F⒎SFZ OBZVUBVFOP "OUPO ,VNBJHPSPET LJ -BOHVBHF (P (P $ 4DBMB /PEFKT $ 4DBMB pSTUDPNNJU +45 MBTUFTU DPNNJU +45 HJUIVC IUUQT HJUIVCDPN MJHIUOJOHOFU XPSLMOE IUUQT HJUIVCDPN NJUEDJMJU IUUQT HJUIVCDPN &MFNFOUT1SPK FDUMJHIUOJOH IUUQT HJUIVCDPN "$*/2FDMBJS IUUQT HJUIVCDPN CDPJOPSH QMBTNB IUUQT HJUIVCDPN OBZVUBDP QUBSNJHBO IUUQT HJUIVCDPN CUDPOUSBDU MOXBMMFU PUIFST BOESPJEBQQ -
͍ͯ͠Δ ϥΠτχϯάٕज़̍ AMP: Atomic Multi-Path Payments(ΞτϛοΫෳܦ࿏ࢧ͍) ݱঢ় ૹۚऀ͔Βडۚऀͷૹۚܦ࿏̍ͭ ྫ͑ɺ100ԁΛૹΓ͍ͨ߹ɺૹۚऀ͔Βडۚऀͷܦ࿏ͷશͯͷνϟωϧ͕100ԁૹۚՄೳͰͳ͍ͱ ͍͚ͳ͍
·ͱ·͓ͬͨۚΛૹΕͳ͍ ̍ສԁͳͲ͋Δఔ·ͱ·͓ͬͨۚɺϥΠτχϯάωοτϫʔΫΛΘͳ͍΄͏͕͍͍ͱࢥ͍ ·͢ νϟωϧʹଟ͘ͷ͓ۚΛஔ͍͓ͯ͘ͷࢿ͕ۚ๛͔ͳਓ -> தԝूݖԽ 1ͭͷૹۚܦ࿏ʹґଘͯ͠͠·͏ ૹۚܦ࿏্ͷϊʔυ͕ૹۚதʹԠ͠ͳ͘ͳΔͳͲ͕ى͖ͨ߹ɺૹ్͕ۚதͰࢭ·ͬͯ͠·ͬ ͯಈ͔ͳ͘ͳΔͱ͍͏͜ͱͳ͍͕ɺૹۚྃ·Ͱ͕͔͔࣌ؒͬͯ͠·͏ -
͍ͯ͠Δ ϥΠτχϯάٕज़̍ AMP: Atomic Multi-Path Payments(ΞτϛοΫෳܦ࿏ࢧ͍) ղܾํ๏ ̍ճͷૹۚΛɺෳͷૹۚܦ࿏ʹׂͯ͠ૹΔ ྑ͍ ૹۚܦ࿏ͷબࢶ͕ͬͱ૿͑ɺϥΠχϯάωοτϫʔΫશମͷϦιʔεΛ͏·͑͘Δ
νϟωϧʹେ͖ͳ͓ۚΛஔ͍͓͔ͯͳͯ͘ɺϥΠτχϯάωοτϫʔΫʹߩݙͰ͖Δ ѱ͍ ϥΠτχϯάωοτϫʔΫશମͰͷૹۚॲཧ૿͑ΔͨΊɺׂΛେ͖͗͘͢͠ΔͱϥΠτ χϯάωοτϫʔΫ͕ͯ͠͠·͏ -
͍ͯ͠Δ ϥΠτχϯάٕज़̍ AMP: Atomic Multi-Path Payments(ΞτϛοΫෳܦ࿏ࢧ͍) ਐల۩߹ ΞτϛοΫੑͷఆٛ࠷దͳ࣮ํ๏ʹ͍ͭͯɺlightning-devϝʔϦϯάϦετͰٞத ·ͩϥΠτχϯάωοτϫʔΫRFCʹͳ͍ͬͯͳ͍ ͜ΕɺݸਓతʹScaling
Bitcoin Workshop 2017 @ Stanford Univ. ʹఏҊ͍ͯͨ͠ͷ(೦ͳ͕ΒτʔΫ ʹ࠾༻͞Ε·ͤΜͰ͕ͨ͠ɻɻ) https://github.com/takaya-imai/packetization_for_paymentchannel -
͍ͯ͠Δ ϥΠτχϯάٕज़̎ ໘ന͍ τϥϯβΫγϣϯͷࢹόοΫΤϯυ͕࣮ͯ͋͠Γɺࢹͷࢄҕ͕Ͱ͖Δ ୯७ʹɺεϚϗΞϓϦϥΠτχϯάωοτϫʔΫʹࢀՃͰ͖·ͤΜ εϚϗͷి͕ΕΔɺΠϯλʔωοτʹଓͰ͖ͳ͘ͳΔͳͲͯ͠ɺτϥϯβΫγϣϯͷࢹ͕ Ͱ͖ͳ͘ͳΔͨΊɻ ૹ͚ۚͩͰ͋ΕͰ͖·͕͢ɺϥΠτχϯάωοτϫʔΫͷҰ෦ͱͯ͠ૹۚܦ࿏ʹߩݙ͢Δʹૹ ۚͱडۚͷ྆ํ͕ඞཁ ݱঢ়·ͩશͳࢄҕͰͳ͍Ͱ͢
ࢹͷࢄҕΛड͚ΔଆʹͱͬͯͷΠϯηϯςΟϒ͕͢Ͱʹ࣮ͯ͋͠Δ εϚϗ্ͷτϥϯβΫγϣϯσʔλ͕յΕͯ͠·ͬͨͳ͘ͳͬͯ͠·ͬͨͱ͖ͷͨΊʹɺόοΫΞοϓΛ औ͓ͬͯ͘͜ͱ͕Ͱ͖Δ ͜ΕΒΛߦ͏ͷ͕ɺOlympusαʔόͰ͢ɻ εϚϗΞϓϦϋϯζΦϯΛ͍ͬͯΔͷͰɺͦ͜Ͱਐల۩߹ެ։͍͖ͯ͠·͢ɻ