Slide 1

Slide 1 text

01@$0%&Λ࢖ͬͨ#$)ͱ#47 ͷεϓϦοτํ๏ʹ͍ͭͯ Tomokazu Kozuma 2019 / 03 / 26 / TUE blockchain.tokyo #18

Slide 2

Slide 2 text

A B O U T M Y S E L F ࣗݾ঺հ Tomokazu Kozuma @Tomokazu106 ౦ژ޻ۀେֶେֶӃଔۀޙɺαΠόʔΤʔδΣϯτͰεϚϗήʔϜͷαʔόɺΠϯ ϑϥશൠΛ୲౰ɻԾ૝௨՟ʹ͍ٕͭͯज़ϒϩάΛॻ͍ͯΔ͏ͪʹ຅಄͠ɺຊ৬ͱ ͯ͠஫ྗ͢ΔͨΊʹ(JODPʹೖࣾɻ(JODPͰ͸ϒϩοΫνΣʔϯͷϊʔυӡ༻ɺϋʔ υϑΥʔΫରԠɺόοΫΤϯυͳͲ޿ൣғΛ୲౰ɻ

Slide 3

Slide 3 text

·ͱΊͯͻͱͭʹ BITCOIN Blockchain BITCOIN CASH Blockchain LITECOIN Blockchain XRP(Ripple) Blockchain ETHEREUM CLASSIC Blockchain ETHEREUM Blockchain

Slide 4

Slide 4 text

ෳ਺ͷԾ૝௨՟Λ·ͱΊͯ؅ཧ

Slide 5

Slide 5 text

(JODPʹ͓͚Δ#47ରԠʹ͍ͭͯ • ࡢ೥຤ʹ#47Λ(JODPͰରԠ͢Δͷ͸ܾ·ͬͯͨ • ͔͠͠ɺ๏తʹ#47ϊʔυ͕ݐͯΒΕͳ͍ͱ͍͏͜ͱ Ͱਖ਼ࣜରԠͰ͖ͳ͔ͬͨ • #$)Λ҆શʹૹۚͰ͖ΔΑ͏ʹεϓϦοτػೳΛ࣮૷

Slide 6

Slide 6 text

֓ཁ • #$)ͱ#47ͷಛ௃ͱ໰୊఺ • ͭͷεϓϦοτํ๏ • 01@$)&$,%"5"4*(Λ࢖ͬͨεϓϦοτ A g e n d a

Slide 7

Slide 7 text

#$)ͱ#47ͷಛ௃ͱ໰୊఺ P A R T 1

Slide 8

Slide 8 text

#$)ͱ#47ͷಛ௃ • #$)͸#5$͔Β)'ʢ೥݄೔ʣ • #47͸#$)͔Β)'ʢ೥݄೔ʣ • ͲͪΒ΋ϒϩοΫαΠζΛେ͖͘͠ɺΦϯνΣʔϯͰ εέʔϥϏϦςΟ໰୊Λղܾ͢Δ͜ͱΛ໨ࢦ͍ͯ͠Δ T I T L E T E X T

Slide 9

Slide 9 text

#$)ͱ#47ͷಛ௃ • 01@$0%&ͷ෮ݩɿ
 [email protected]ɺ01@-4)*'5ɺ01@34)*'5ɺ01@*/7&35 • εΫϦϓτ͋ͨΓ01@$0%&ͷ੍ݶΛऔΓআ͘ • ࠷େϒϩοΫαΠζΛ.#·Ͱ֦େ F e a t u r e o f B C H a n d B S V • ৽ن01@$0%&ɿ01@$)&$,%"5"4*( 7&3*': • $BOPOJDBM5SBOTBDUJPO0SEFSJOHʢ$503ʣͷಋೖ B C H ɿ B i t c o i n A B C B S V ɿ n C h a i n

Slide 10

Slide 10 text

#$)ͱ#47ͷ໰୊఺ • ϦϓϨΠϓϩςΫγϣϯػೳ͕ͳ͍ʢ#$)ʹ݄ಋೖ༧ఆʣ P r o b l e m • #$)Λૹۚ͢Δͱ#47΋ૹۚ͞Ε
 ˠτϥϯβΫγϣϯϦϓϨΠ͕ൃੜ • ͓٬༷͕ࢿ࢈Λ҆શʹ؅ཧͰ͖ΔΑ͏ʹ͢Δඞཁ͕͋Δ
 ˠεϓϦοτػೳΛ࣮૷

Slide 11

Slide 11 text

ͭͷεϓϦοτํ๏ P A R T 2

Slide 12

Slide 12 text

5 5 S p l i t %VTU5SBOTBDUJPO O-PDL5JNF 01@$0%& ͭͷεϓϦοτํ๏

Slide 13

Slide 13 text

%VTU5SBOTBDUJPO • ख਺ྉͱͯ͠औΓࠐ·Εͳ͍࠷௿ֹۚʢTBUʣͷ 6590Λ࢖༻ A b o u t D u s t T r a n s a c t i o n ? • #$)ʹ͔͠ଘࡏ͠ͳ͍%VTU5YΛΠϯϓοτʹؚΊͯ ૹۚ͢Δ • #47ͷνΣʔϯʹ͸ଘࡏ͠ͳ͍6590͕Πϯϓοτʹ ؚ·Ε͍ͯΔͨΊঝೝ͞Εͳ͍

Slide 14

Slide 14 text

O-PDL5JNF • τϥϯβΫγϣϯʹࢦఆͰ͖Δύϥϝʔλ A b o u t n L o c k T i m e • ࢦఆͨ͠ϒϩοΫߴɺ6OJY5JNF·ͰϒϩοΫʹ औΓࠐ·Εͳ͍ • #$)ͱ#47ͷ࠷৽ϒϩοΫߴͷࠩΛར༻ͯ͠ εϓϦοτ͢Δํ๏

Slide 15

Slide 15 text

εϓϦοτͷൺֱ εϓϦοτํ๏ ϝϦοτ σϝϦοτ %VTU5SBOTBDUJPO ࣮૷͕͍Βͳ͍ ༰қʹ࣮ߦͰ͖Δ εϓϦοτ͢Δʹ͸෼཭ࡁͷ6590͕ඞཁ શͯͷ΢ΥϨοτʹରͯ͠ૹۚ͢Δඞཁ͕͋Δ O-PDL5JNF ࣮૷΄΅͕͍Βͳ͍ #$)ͱ#47ͷϒϩοΫߴ͕཭Ε͍ͯΔඞཁ͕͋Δ ஌͕ࣝͳ͍ͱૹۚλΠϛϯά͕Θ͔Βͳ͍ 01@$0%& 01@$)&$,%"5"4*( ͍ͭͰ΋ԿճͰ΋ εϓϦοτͰ͖Δ ௐࠪͱ࣮૷͕গ͠େม

Slide 16

Slide 16 text

01@$0%&Λ࠾༻ͨ͠ཧ༝ • ೚ҙͷλΠϛϯάͰԿճ΋εϓϦοτͰ͖Δ
 ˠ̍ճ͋ͨΓԁ͘Β͍ • ஌͕ࣝͳͯ͘΋؆୯ʹ࣮ߦͰ͖Δ • ࣄۀऀଆͷίετෛ୲͕ͳ͍ R e a s o n t o U s e O P _ C O D E

Slide 17

Slide 17 text

01@$)&$,%"5"4*(Λ ࢖ͬͨεϓϦοτ P A R T 3

Slide 18

Slide 18 text

01@$)&$,%"5"4*(ͱ͸ʁ • ϒϩοΫνΣʔϯ֎ͷσʔλʢΦϥΫϧʣͷॺ໊ݕূΛߦ͑Δ A b o u t O P _ C H E C K D A T A S I G OP_CHECKDATASIG S c r i p t • ΦϥΫϧ͕࢖͑ΔͷͰΞτϛοΫεϫοϓ΁ͷԠ༻ʹظ଴

Slide 19

Slide 19 text

5 S p l i t U s i n g P 2 P K H a n d P 2 S H εϓϦοτͷखॱ 3FEFFN4DSJQUͷߏஙͱղআ 01@$)&$,%"5"4*(Λ࢖ͬͨεϓϦοτํ๏

Slide 20

Slide 20 text

εϓϦοτͷखॱ • εϓϦοτ͸ࣗ෼΁શֹૹۚΛճߦ͏ F l o w o f S p l i t • ճ໨͸01@$)&$,%"5"4*(Λ3FEFFN4DSJQUʹ ؚΉΞυϨεʹૹۚ͢Δ͜ͱ͕໨త • ճ໨ͷૹۚ͸01@$)&$,%"5"4*(ΛؚΉ6590Λ ղআͯ͠11,)ʹૹۚ͢Δ͜ͱ͕໨త

Slide 21

Slide 21 text

ճ໨ͷશֹૹۚ • 01@$)&$,%"5"4*(ΛؚΉ14)ΞυϨεʹTBUૹۚ *OQVU 0VUQVU #$)#47 #$)#47 #$)#47 TBU #$)#47 ͓௼Γ 14)"EESFTT 11,)"EESFTT • #47Ͱ͸14)ͷ6590͕࢖͑ͳ͍ͷͰ࠷௿ֹۚʹ͓ͯ͘͠

Slide 22

Slide 22 text

ճ໨ͷશֹૹۚ • 01@$)&$,%"5"4*(Ͱ࡞ΒΕͨ6590ΛؚΜͩૹۚΛ͢Δ͜ ͱͰ෼཭Ͱ͖Δ *OQVU 0VUQVU શֹ#$) TBU #$)#47 ͓௼Γ 14)"EESFTT 11,)"EESFTT 11,)"EESFTT • #47Ͱ࢖͑Δͷ͸ճ໨ͷૹۚͰ͓௼Γͱͯ͠ૹͬͨ෼͚ͩ

Slide 23

Slide 23 text

3FEFFN4DSJQUͷߏங • 3FEFFN4DSJQU಺Ͱॺ໊ݕূ͕׬݁͢ΔΑ͏ߏங B u i l d i n g R e d e e m S c r i p t OP_CHECKDATASIGVERIFY R e d e e m S c r i p t • ͜Εͩͱ୭Ͱ΋ղআͯ͠࢖༻͢Δ͜ͱ͕Ͱ͖ͯ͠·͏ͷͰɺ 3FEFFN4DSJQUʹࣗ෼ͷެ։伴Λ૊ΈࠐΉ

Slide 24

Slide 24 text

• 11,)Λ3FEFFN4DSJQUʹ૊ΈࠐΉ OP_CHECKDATASIGVERIFY OP_DUP OP_HASH160 <20-bytes-pubkey-hash> OP_EQUALVERIFY OP_CHECKSIG R e d e e m S c r i p t 3FEFFN4DSJQUͷߏங B u i l d i n g R e d e e m S c r i p t

Slide 25

Slide 25 text

3FEFFN4DSJQUͷղআ • 3FEFFN4DSJQUͷαΠζ͕#ZUFTΛ௒͑ΔͷͰ 01@164)%"5"Λ࢖͏ L o c k i n g S c r i p t OP_HASH160 <20-bytes-redeem-script—hash> OP_EQUAL U n l o c k i n g S c r i p t OP_PUSHDATA1 redeem-script

Slide 26

Slide 26 text

·ͱΊ • ϦϓϨΠϓϩςΫγϣϯ͕ϓϩτίϧʹ૊Έࠐ·Ε͍ͯͳͯ͘΋ ࢓༷ʹΑͬͯ͸ରԠͰ͖Δ • 01@$0%&Λ࢖͏ͱϢʔβͷ೚ҙͷλΠϛϯάͰεϓϦοτͰ͖ɺ ίετ͕΄΅͔͔Βͳ͍ S u m m a r y