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

NFTを開発するためのブロックチェーン・スマートコントラクト技術

 NFTを開発するためのブロックチェーン・スマートコントラクト技術

https://cryptocurrency.connpass.com/event/240069/
NFT(Non Fungible Token:非代替性トークン)が社会で大きな注目を集めています。
Ethereum(イーサリアム)ブロックチェーンの概要から始まり、スマートコントラクトについて触れ、NFTを開発するための技術についてお伝えしました。

Shu Kobuchi

March 12, 2022
Tweet

More Decks by Shu Kobuchi

Other Decks in Technology

Transcript

  1. /'5Λ։ൃ͢ΔͨΊͷϒϩοΫνΣʔϯɾ
    εϚʔτίϯτϥΫτٕज़
    ೥݄೔ ౔
    !04$0OMJOF4QSJOH
    ೔ຊ҉߸௨՟Ϣʔβձɹখᔹप 4IV,PCVDIJ

    View Slide

  2. ࣗݾ঺հ
    খᔹपɹ4IV,PCVDIJɹ!TIV@LPC
    γεςϜ։ൃΛ͖ͯͨ͠தͰɺ

    ೥࢓ࣄͰ#JUDPJO8FC8BMMFUϓϩτλΠϓͷ։ൃʹैࣄ
    Ծ૝௨՟औҾॴ޲͚΢ΥϨοτϕϯμʔͰ։ൃɾӡ༻
    ʙԾ૝௨՟औҾॴͷΤϯδχΞ
    ೔ຊ҉߸௨՟Ϣʔβձ͸೥͔ΒࢀՃ͠ɺӡӦΛ຿ΊΔ
    झຯɿమಓɺञɺΧϥΦέ
    2

    View Slide

  3. ίϛϡχςΟ঺հ
    ೔ຊ҉߸௨՟ϢʔβձɹIUUQTDSZQUPDVSSFODZDPOOQBTTDPN
    ʮϏοτίΠϯͱ͔ษڧձʯʢ݄̍ճɿฏ೔໷ʣ
    ʮ҉߸௨՟ಡॻձʯʢ݄̍ճɿฏ೔໷ʣ
    :PV5VCFͰΞʔΧΠϒࢹௌՄೳIUUQCJUMZZPVUVCFDDTUVEZ
    w νϟϯωϧొ࿥͓ئ͍͠·͢ʂ
    3

    View Slide

  4. ͜Ε·Ͱͷ04$ൃදͷΞʔΧΠϒ
    ॳ৺ऀͷͨΊͷϏοτίΠϯૹۚମݧʢ04$0OMJOF4QSJOHʣ
    IUUQTZPVUVCFNH3YT934
    ϏοτίΠϯɾϒϩοΫνΣʔϯೖ໳ʢ04$0OMJOF'BMMʣ
    IUUQTZPVUVCF,5;DXZ-WX
    4

    View Slide

  5. ΠʔαϦΞϜ͸Φʔϓϯιʔε
    ϏοτίΠϯ #JUDPJO
    ͸Φʔϓϯιʔε
    ୭Ͱ΋։ൃʹࢀՃՄೳʂ

    IUUQTHJUIVCDPNCJUDPJOCJUDPJO
    ϏοτίΠϯΛ͸͡Ίɺ҉߸௨՟ɾϒϩοΫνΣʔϯͷଟ͘͸044
    ٕज़తʹ΋໘ന͍ʂʂ
    ϥΠτίΠϯ -JUFDPJO
    ͸#JUDPJOͷιʔείʔυ͔ΒϑΥʔΫ

    IUUQTHJUIVCDPNMJUFDPJOQSPKFDUMJUFDPJO
    ϞφίΠϯ .POBDPJO
    ͸-JUFDPJOͷιʔείʔυ͕ϕʔε

    IUUQTHJUIVCDPNNPOBDPJOQSPKFDUNPOBDPJO
    ΠʔαϦΞϜ &UIFSFVN
    ΋Φʔϓϯιʔε

    IUUQTHJUIVCDPNFUIFSFVNHPFUIFSFVN
    5

    View Slide

  6. #JUDPJO

    View Slide

  7. ϏοτίΠϯͱ͸
    தԝ؅ཧऀΛ࣋ͨͳ͍11ిࢠϚωʔγεςϜʢඇதԝूݖతͳ҉߸௨՟ʣ
    தԝ؅ཧऀΛ࣋ͭۚ༥γεςϜͱ͸ۜߦͳͲ
    ϏοτίΠϯ͕ੜ·ΕΔલ͔Β11ిࢠϚωʔͷݚڀ͸ߦΘΕ͍ͯͨ
    w ࣮༻ԽϨϕϧͰॳΊͯ੒ޭͨ͠ͷ͕ϏοτίΠϯ
    w ҎޙɺϏοτίΠϯͷٕज़Λجʹ༷ʑͳ҉߸௨՟͕ొ৔
    w ϏοτίΠϯͷج൫ٕज़ʮϒϩοΫνΣʔϯʯΛ௨՟Ҏ֎΁ͷԠ༻΋
    ೥຤4BUPTIJ/BLBNPUP φΧϞτατγ
    ͕࿦จΛΦʔϓϯιʔείϛϡχςΟͷϝʔϦϯάϦετʹ౤ߘ
    w IUUQTCJUDPJOPSHCJUDPJOQEG
    ೥ʹϏοτίΠϯ͕Քಇ࢝͠Ίͨ
    7

    View Slide

  8. ϋογϡؔ਺
    Մม௕ͷೖྗ஋ʹର͠ɺݻఆ௕ͷग़ྗ஋Λฦ͢
    ཚ਺Ͱ͸ͳ͍ͷͰɺಉ͡ೖྗ஋͔Β͸ৗʹಉ͡ग़ྗ஋ΛಘΔ
    ग़ྗ஋͔Βೖྗ஋Λਪଌ͢Δͷ͸΄΅ෆՄೳ
    IUUQTXXXNPWBCMFUZQFDPVLTDSJQUTTIBIUNM

    IUUQTHPPHM1PHF#
    8
    ೖྗ͸Մม௕
    PQFOTPVSDF
    ग़ྗ͸ݻఆ௕
    PQFOTPVSDJ
    CFBCCGCEBDFFD
    DCFBCBCCDDFCGDG
    CBEBEFBGCEC
    DBFDBEGDGFFB
    4)"
    ϋογϡؔ਺
    4)"
    ϋογϡؔ਺
    Ұจࣈ
    ม͑Δ
    શ͘ҟͳΔ
    ஋ʹ

    View Slide

  9. ެ։伴҉߸
    ެ։伴͸ʮ伴ʯͱ͍͏໊લ͕ͩɺʮৣʯΛΠϝʔδ͢ΔͱΘ͔Γ΍͍͢
    ΞϦε͸Ϙϒͷެ։伴Λ༻͍ͯɺฏจΛ҉߸Խ͢Δ
    Ͱ͖ͨ҉߸จ͸Ϙϒͷൿີ伴Ͱ͔͠෮߸ԽͰ͖ͳ͍
    ҉߸Խ͢Δ伴ʢެ։伴ʣͱ෮߸Խ͢Δ伴ʢൿີ伴ʣ͕ผʑ
    ΞϦε͸Ϙϒͷൿີ伴͕ͳͯ͘΋Ϙϒʹ͔͠෮߸ԽͰ͖ͳ͍҉߸จΛ࡞੒Մ
    9
    φΧϞτατγͷ
    ਖ਼ମ͸ʓʓʓ
    DECGEGE
    FCDBECC
    EDCCFDD
    Ϙϒͷެ։伴
    φΧϞτατγͷ
    ਖ਼ମ͸ʓʓʓ
    ҉߸จ
    ฏจ ฏจ
    Ϙϒͷൿີ伴
    ҉߸Խ
    ෮߸Խ
    ΞϦε Ϙϒ

    View Slide

  10. ϏοτίΠϯͷެ։伴҉߸ʢུ֓ʣ
    ΞϦε͸Ϙϒʹ#5$ૹΓ͍ͨ
    ΞϦε͸Ωϟϩϧ͔Βड͚औͬͨ#5$͕͋Δͱ͢Δ
    ΞϦεͷެ։伴͕͔͔ͬͨ#5$͕͋Δ
    ΞϦεͷൿີ伴ͰϩοΫΛղআͯ͠࢖͑ΔΑ͏ʹͳΔ
    ΞϦε͕Ϙϒͷެ։伴Λ͔͚Δ͜ͱͰϘϒʹϏοτίΠϯΛૹΔ
    10
    #5$
    Ϙϒͷެ։伴
    ΞϦεͷൿີ伴
    Ωϟϩϧ
    #5$
    ΞϦεͷެ։伴
    ϩοΫղআ
    Ωϟϩϧ͔Β
    ΞϦεʹૹۚ
    ΞϦε͔Β
    Ϙϒʹૹۚ

    View Slide

  11. ΞυϨεੜ੒
    ൿີ伴͸ཚ਺Λ࢖ͬͯಘΔ
    Ϗοτͷ੔਺ͳͷͰɺճίΠϯΛ౤͛ͯੜ੒΋Մೳ
    ެ։伴͸&$%4" ପԁۂઢ҉߸
    Λ༻͍ͯൿີ伴ͷεΧϥʔഒࢉʢෆՄٯʣ
    ΞυϨε͸ެ։伴ͷϋογϡʢෆՄٯʣ
    ެ։伴ِ଄໰୊Λ๷͙ͨΊɺϏοτίΠϯͰ͸ެ։伴ͱҰରҰͰରԠ͢ΔΞυϨεΛ࢖༻ʢதԝ؅ཧऀ͕͍ͳ͍ͨΊɺೝ
    ূہ͸࢖Θͳ͍ʣ
    ൿີ伴Λ஌ΒΕΔͱɺ#5$͕౪·ΕΔͷͰ؅ཧ͸ݫॏʹʂ
    11
    L
    ൿີ伴
    1SJWBUF,FZ
    ,
    ެ։伴
    1VCMJD,FZ
    "
    ΞυϨε
    "EESFTT
    ପԁۂઢ্ͷ
    εΧϥʔഒࢉ
    Ұํ޲

    ϋογϡؔ਺
    Ұํ޲

    ਪଌෆՄ
    ෆՄٯ

    ਪଌෆՄ
    ෆՄٯ

    View Slide

  12. ൿີ伴ɾެ։伴ɾΞυϨεͷ࣮ྫ
    ൿີ伴͕Θ͔Ε͹ɺੜ੒نଇ͔ΒҰҙʹܾ·ΔΞυϨεʹඥͮ͘ίΠϯΛૹۚͰ͖Δ
    ઈରʹଞਓʹݟΒΕͯ͸͍͚ͳ͍
    12
    L
    ൿີ伴
    1SJWBUF,FZ
    ,
    ެ։伴
    1VCMJD,FZ
    "
    ΞυϨε
    "EESFTT
    DEFCDBCEEFFDECGBED
    CECCFDCDFGEEECE
    EBDEEFBCGGFCGD
    DEFCDBCEEFFD
    ECGBEDCECCFD
    DYQP.#$::8$H'485EDNYJQO(6T1X

    View Slide

  13. τϥϯβΫγϣϯ5SBOTBDUJPO59
    ΞϦε͕Ϙϒʹ#5$ΛૹΔ
    Ҏલड͚औֹ͍ͬͯͨΛ߹ࢉͯ͠ɺ૬खʹૹΓɺ͓௼Γ͸ࣗ෼΁
    59தʹهࡌͷͳֹ͍ ͜͜Ͱ͸#5$
    ͸ޙʹϚΠφʔ΁
    13
    ΞϦε
    Ϙϒ
    5SBOTBDUJPO 59

    */165 065165
    ΞϦε
    Ωϟϩϧ
    ΞϦεˠϘϒ
    #5$
    ΩϟϩϧˠΞϦε
    #5$
    ΞϦεˠΞϦε
    ͓௼Γ

    #5$
    #5$
    σϏοτˠΞϦε
    #5$
    #5$
    σϏοτ
    ܭ#5$ ܭ#5$
    ϚΠφʔ
    ωοτϫʔΫख਺ྉ
    #5$
    ˞59ʹهࡌ͸ͳ͍
    ൿີ伴Λࠩ͠ࠐΜͰ
    ϩοΫղআɿిࢠॺ໊
    ΞϦεͷ
    ൿີ伴
    ΞϦεͷ
    ൿີ伴
    ΞϦεͷ
    ެ։伴
    Ϙϒͷ
    ެ։伴
    ΞϦεͷ
    ެ։伴
    ΞϦεͷ
    ެ։伴

    View Slide

  14. ΞυϨεͷ؅ཧͱಗ໊ੑ
    ϏοτίΠϯͷ৔߹
    ΞυϨε͸ҰਓͰ͍ͭ͘΋࣋ͯΔ
    w ͓௼ΓΞυϨεΛૹ৴ݩΞυϨεͱ͸ผʹͯ͠ɺಗ໊తʹར༻ͨ͠ํ͕͍͍
    w ୭͕͍͘Β͍࣋ͬͯΔ͔Λ஌ΒΕͳ͍ͨΊ
    ΠʔαϦΞϜͷ৔߹
    ΞυϨε͸ҰਓͰ͍ͭ͘΋࣋ͯΔ͕ɺଟ਺ͷΞυϨεΛ࢖͍͜ͳ͢ͷ͸ΞΧ΢ϯτܕͷಛੑ্ෆศ
    w ಗ໊ੑͱ͍͏؍఺Ͱ͸མͪΔ
    ΞυϨεٴͼͦͷதʹ͋ΔԾ૝௨՟͕୭ͷ࣋ͪ෺͔͸ϒϩοΫνΣʔϯωοτϫʔΫͰ͸Θ͔Βͳ͍
    ΞυϨεͷੜ੒ݩͱͳͬͨൿີ伴Λૢ࡞Ͱ͖Δਓ͕࣋ͪओ
    ൿີ伴Λ౪·Εͯ΋ϏοτίΠϯωοτϫʔΫͰ͸ؔ༩͠ͳ͍
    14

    View Slide

  15. 11ωοτϫʔΫͰͷసૹ
    ࡞੒ͨ͠τϥϯβΫγϣϯΛϏοτίΠϯ11ωοτϫʔΫʹϒϩʔυΩϟετ ൃใ
    ͢Δ
    ϊʔυ͸59ͷܗࣜΛνΣοΫ͠ɺϏοτίΠϯͷܗࣜͱͯ͠ਖ਼͚͠Ε͹ɺྡͷϊʔυʹసૹ͍ͯ͘͠
    શͯͷϊʔυ͕ಉ͡59Λ࣋ͭ

    ʢશੈքͷϊʔυʹߦ͖౉Δʣ
    15
    ΞϦε
    Ϙϒ
    59
    ൃใ
    59
    59
    59
    సૹ సૹ
    59
    59
    59
    సૹ
    సૹ
    సૹ
    సૹ


    View Slide

  16. τϥϯβΫγϣϯνΣʔϯͱ6590ߏ଄
    τϥϯβΫγϣϯ 59
    ͸લͷ59ͷ৘ใΛ͍࣋ͬͯΔʢϋογϡϙΠϯλʣ
    ݩΛḷΕ͹ɺඞͣ$PJOCBTF59ʹͨͲΓண͘
    ϚΠφʔ͸ࣗ෼ͷΞυϨεʹରͯ͠ϚΠχϯάใुΛૹΔ59ΛϒϩοΫʹؚ·ͤΔ
    */165෦͸ۭ
    65906OTQFOU5SBOTBDUJPO0VUQVUϏοτίΠϯ͸ʮ6590ߏ଄ʯ
    16
    TX
    Coinbase TX
    ۭ
    TX
    TX
    TX
    TX
    TX TX
    16
    ࢀর
    ࢀর
    ࣍ͷ59ͷ*/165ʹ࢖༻͞Ε͍ͯͳ͍
    ະ࢖༻6590ͷ͔͖ूΊ͕࢒ߴ

    View Slide

  17. ϏοτίΠϯͷ΢ΥϨοτ
    ΢ΥϨοτʹ͓͕ۚೖ͍ͬͯΔͱ͍͏ΑΓ͸ɺൿີ伴͕ೖ͍ͬͯΔ
    ൿີ伴͸σδλϧσʔλ จࣈྻ
    ͳͷͰ౪ΈݟΒΕΔͱଞਓ΋࢖͑Δ
    ෺ཧతͳ伴΋߹伴͕࡞ΕΔʢෳ੡Ͱ͖ΔʣΑ͏ʹ
    ϊʔυͷ෼ࢄ୆ா͸શऔҾΛ͓࣋ͬͯΓɺΈΜͳಉ͡σʔλ
    ൿີ伴ͰੈքதͷͲͷϏοτίΠϯϊʔυ͔ΒͰ΋ࣗ෼ѼͰ

    ະ࢖༻ͳ 6OTQFOU
    5SBOTBDUJPO0VUQVU 6590


    Λૢ࡞͢Δ͜ͱ͕Ͱ͖Δ
    17
    TX
    TX
    ࣗ෼ͷ
    6590
    ଞਓͷ
    6590
    ࣗ෼ͷ
    4QFOU
    ࣗ෼ͷ
    6590

    View Slide

  18. ೋॏࢧ෷͍໰୊
    ΞϦε͸Ωϟϩϧ͔Β΋Βͬͨ#5$ΛϘϒʹ΋ૹཧɺΤϨϯʹ΋ૹͬͨͱ͢Δʢೋॏࢧ෷͍Λͨ͠ʣ
    ͲͪΒͷτϥϯβΫγϣϯΛਖ਼౰ͱݟͳ͔͢
    ؅ཧऀ͕͍Ε͹؅ཧऀͷϊʔυʹಧ͍ͨઌணॱͰܾΊΕ͹ྑ͍
    ͔͠͠ɺ؅ཧऀͷ͍ͳ͍෼ࢄωοτϫʔΫͰ͜ͷରࡦΛ͠ͳ͚Ε͹ͳΒͳ
    11ωοτϫʔΫ্Ͱઌணॱͷ൑ఆ͸ෆՄೳ
    18
    ΞϦε
    Ϙϒ
    59
    5PϘϒ
    59
    5PΤϨϯ
    Ωϟϩϧ
    ΤϨϯ
    #5$
    #5$
    #5$
    ೋॏࢧ෷͍
    Ϙϒ
    ΤϨϯ

    View Slide

  19. ೋॏࢧ෷͍ΛແޮԽ͢Δʹ͸ʁ
    ೋॏࢧ෷͍ΛແޮԽ͢ΔͨΊʹɺ6590͕࢖༻ࡁΈͰ͋Δ͔ͷ൑ఆ͕ඞཁ
    ࢖༻ࡁΈͰ͋Δ͜ͱ͸ɺܝࣔ൘ʹ·ͱΊͯ஌ΒͤΔ
    ϒϩοΫ͸ެ༻ܝࣔ൘
    19
    ࢖༻ࡁΈ6590Ұཡ
    ΞϦεˠϘϒ#5$
    ΤϨϯˠΩϟϩϧ#5$
    ΩϟϩϧˠσϏοτ#5$
    ΩϟϩϧˠΞϦε#5$
    ϘϒˠΤϨϯ#5$

    View Slide

  20. ୭͕ϒϩοΫʢܝࣔ൘ʣΛ࡞੒͢Δͷ͔ʁ
    ۃΊͯ௿͍֬཰ͷλʔήοτΛݟ͚ͭͨਓʹϒϩοΫʢܝࣔ൘ʣ࡞੒ͷݖར
    ྫ͑ΔͳΒɺ࢛ͭ༿ͷΫϩʔόʔΛ୳͢େձ
    ௿͍֬཰ͷλʔήοτ͕ݟ͔ͭͬͨ
    ͦΕ͚ͩେมͳ࡞ۀΛͨ͠ͱ͍͏͜ͱ
    ӡΑ͙͘͢ʹݟ͔ͭΔ͜ͱ΋͋Δ͕ɺ੒ޭΛଓ͚Δʹ͸࿑ྗΛׂ͖ଓ͚Δ͔͠ͳ͍
    ϏοτίΠϯͷ৔߹͸ɺޮ཰తͳΞϧΰϦζϜ͕ଘࡏ͠ͳ͍ͱ͞ΕΔ୯७ͳܭࢉΛͻͨ͢Β΍Γଓ͚Δ
    ΍Δͷ͸ϚΠχϯάϚγϯͰɺిؾ୅͕ͱͯ΋͔͔Δ
    େมͳ࡞ۀΛͨ͠ਓ͸ෆਖ਼ͷͨΊΑΓ΋ϒϩοΫใुͱ͍͏ΠϯηϯςΟϒͷͨΊʹਖ਼͍͠ߦಈΛ͢Δͱ͍͏લఏ
    1SPPGPG8PSLʢ࡞ۀূ໌ʣͱ͍͏
    20

    View Slide

  21. ϚʔΫϧϧʔτ
    ϒϩοΫͷߏ଄
    ϒϩοΫʹؚΊΔτϥϯβΫγϣϯΛ·ͱΊͨϚʔΫϧϧʔτΛܭࢉ
    59͕ͲͷϒϩοΫʹೖ͍ͬͯΔ͔͕Θ͔Δ
    ϒϩοΫϔομͱτϥϯβΫγϣϯ͕ϒϩοΫʹؚ·ΕΔ
    ʮφϯεʯͱ͍͏ԿͰ΋ྑ͍ύϥϝʔλΛೖΕͯϒϩοΫͷϋογϡΛܭࢉ
    ͦͷ಄/ܻ͕શͯʹͳΔ·Ͱʢਐ਺ͳͷͰɺ֬཰͸ͷ/৐ʣ
    ͘͢͝௿͍֬཰ʢྫ͑ΔͳΒܻ͋ΔೆژৣΛຖճ਺ࣈม͑ͯղৣͰ͖Δ͔ࢼ͢ʣ
    21
    લͷϒϩοΫͷ
    ϋογϡ
    લͷϒϩοΫͷ
    ϔομ
    λΠϜελϯϓ
    φϯε
    ϒϩοΫͷϋογϡ
    GFCGEFGEGEECCDEF
    CFC
    ͻͨ͢Βม͑ͯ
    ϒϩοΫϋογϡΛܭࢉ
    59 59
    59
    59
    59
    59

    View Slide

  22. ϒϩοΫνΣʔϯ
    ೋॏࢧ෷͍ΛແޮԽ͢Δखஈ
    ೋॏࢧ෷͍͸Ͱ͖Δ͕ɺϒϩοΫʹࡌΒͳ͚Ε͹ແޮ
    ϒϩοΫνΣʔϯ͸ࣄޙঝೝͷζϧ͍γεςϜ
    ͔ͩΒɺམͪͳ͍
    τϥϯβΫγϣϯΛେྔʹྲྀͯ͠ωοτϫʔΫͷෛՙΛ্͛ͯ΋ɺ஗Ԇ͕ى͜Δ͚ͩͰམͪͳ͍
    தԝ؅ཧ͞ΕͨγεςϜͩͱɺ%#Ͱॱ൪ʹॲཧ͢ΔͨΊɺॲཧ͕٧·ΔͱམͪΔ
    22

    View Slide

  23. ϒϩοΫνΣʔϯ
    ϒϩοΫ͸લͷϒϩοΫΛϋογϡϙΠϯλͰࢀরͯ͠ (FOFTJT#MPDL
    ͔Β࠷৽ͷϒϩοΫ·Ͱܨ͕͍ͬͯΔ
    ్தͷϒϩοΫʹऔΓࠐ·Ε͍ͯΔτϥϯβΫγϣϯͷத਎Λมߋ͢Δʹ͸ɺϒϩοΫͷ࡞Γ௚͠ͱޙଓͷϒϩοΫΛ࡞
    Γ௚͞ͳ͚Ε͹ͳΒͳ͍
    w ϏοτͰ΋ม͑Δͱɺϋογϡ஋͕શ͘ҟͳΔͷͱɺϒϩοΫΛ࡞Γ௚͢ϚΠχϯά΋ඞཁͰɺվ͟Μ͸ࠔ೉
    23
    ࢀর ࢀর ࢀর ࢀর ࢀর ࢀর
    59 59
    59
    59
    59
    59
    59
    ᶃվ͟Μ͍ͨ͠
    ᶄϒϩοΫ࡞Γ௚͠
    ͜Ε͚ͩͰ΋େม ᶅޙଓͷϒϩοΫ࡞Γ௚͠
    ͘͢͝େม
    ௕͍ϒϩοΫΛ
    ਖ਼౰ͱΈͳ͢
    ᶆݱࡏͷϒϩοΫνΣʔϯ
    ΑΓ΋௕͘͢Δ

    View Slide

  24. ϒϩοΫνΣʔϯ
    ϒϩοΫͷϋογϡ಄/ܻ͕Ͱ͋Δ͔ʢ೉қ౓ʣ͸ϒϩοΫ͔͔ͬͨ࣌ؒΛ ෼ ೔िؒ
    ͱൺֱܾͯ͠ΊΔ
    ̍ϒϩοΫ࡞Δͷʹฏۉ෼
    ೉қ౓Λ্͛Δʹ͸಄ͷͷܻ਺Λ૿΍͢ɺ೉қ౓ΛԼ͛ΔͳΒݮΒ͢
    ੒ޭ֬཰͸?/ʢ/ɿܻ਺ɺϋογϡ͸ਐ਺ʣݱࡏܻ
    ϒϩοΫใु͸ (FOFTJT#MPDL
    ͕#5$ɺ Ͱ#5$ɺ Ͱ#5$ͱ͍͏Α͏ʹ ϒϩοΫ
    ͝ͱʹใु൒ݮ
    ໿̐೥ʹ̍ճՆقޒྠͷ೥ͷՆࠒʹ൒ݮ͢Δ
    ϏοτίΠϯΛ৽نൃߦ͍ͯ͠Δ
    ೥ʹ৽نൃߦ͕ऴΘΓɺ૯ֹສ#5$ͱͳΔ
    ݶΓ͋Δۚ ΰʔϧυ
    ͷ࠾۷ ϚΠχϯά
    ʹͳͧΒ͑ͯϒϩοΫੜ੒࡞ۀͷΛϚΠχϯάͱݺͿ
    24

    View Slide

  25. ϒϩοΫͷঝೝ਺
    ঝೝ਺͕ଟ͚Ε͹ଟ͍΄Ͳ෴Γʹ͍͘ʢ֬཰తϑΝΠφϦςΟʣ
    25
    TX
    Memory Pool(mempool)
    TX
    ࠷৽ϒϩοΫ
    ະঝೝʢ̌ঝೝɿ0 Confirmation)
    TX
    Memory Pool(mempool)
    TX
    ࠷৽ϒϩοΫ
    1ঝೝɿ1 Confirmation
    ࣗ෼ͷૹۚTX
    TX
    ࣗ෼ͷૹۚTX
    TX
    Memory Pool(mempool)
    TX
    ࠷৽ϒϩοΫ
    6ঝೝɿ6 Confirmationʢ঎औҾͰΑ͘࢖ΘΕΔঝೝ਺ʣ
    TX
    ࣗ෼ͷૹۚTX
    ະঝೝTX(τϥϯβΫγϣϯ)
    ؚ͕·ΕΔ
    ϚΠφʔใु͸ঝೝ͞ΕΔ·ͰϩοΫ͞Ε͍ͯͯɺͦΕ·Ͱ࢖༻Ͱ͖ͳ͍

    View Slide

  26. ใुͷҙຯ
    ΠϯηϯςΟϒ͕͋Δ͜ͱͰɺϚΠχϯάͱ͍͏ӡ༻΁ͷࢀՃΛଅ͢
    ϚΠφʔ͕૿͑ɺϋογϡύϫʔ͕େ͖͘ͳΔͱɺϏοτίΠϯωοτϫʔΫͷηΩϡϦςΟ͕૿͢
    w ੈքதͷεʔύʔίϯϐϡʔλ͕ଋʹͳͬͯ΋ϏοτίΠϯωοτϒϩοΫνΣʔϯΛվ͟ΜͰ͖ͳ͍
    ϒϩοΫʹؚ·ΕΔτϥϯβΫγϣϯͷख਺ྉ΋ϚΠφʔ͕΋Β͑Δ
    ϒϩοΫใु৽نൃߦ ݱࡏ#5$
    Є ϒϩοΫதͷ59ख਺ྉ

    26
    ϒϩοΫ
    59
    59
    59
    59
    59
    59
    5SBOTBDUJPO 59

    */165 065165
    ΞϦεˠϘϒ
    #5$
    ΩϟϩϧˠΞϦε
    #5$
    ΞϦεˠΞϦε
    ͓௼Γ

    #5$
    σϏοτˠΞϦε
    #5$
    ܭ#5$ ܭ#5$
    ϚΠφʔ
    ωοτϫʔΫख਺ྉ
    #5$
    ˞59ʹهࡌ͸ͳ͍
    $PJOCBTF59
    ใुΛࣗ෼΁

    View Slide

  27. ϚΠχϯάͷϏδωεԽ
    ϚΠχϯάʹ͸େن໛ͳࢿຊ͕౤Լ͞ΕɺҰେϏδωεʹʂ
    ੲ͸ݸਓͰϚΠχϯάͰ͖͕ͨɺ͍·Ͱ͸ݸਓͰ͸ଠ౛ଧͪͰ͖ͳ͍Ϩϕϧʹͳ͍ͬͯΔ
    ϚΠχϯάϚγϯΛฒ΂ͨࢪઃ͸ϚΠχϯάϑΝʔϜͱΘΕɺ޻৔ͷΑ͏ͳ
    ϚΠχϯάใु֫ಘͷͨΊʹɺܹ͍͠ϚΠχϯάڝ૪
    27
    ੈք࠷େखͷϚΠχϯάϑΝʔϜ#JUNBJO

    View Slide

  28. ωοτϫʔΫख਺ྉͷҙຯ
    ϚΠφʔ͕ঝೝͰ͖Δσʔλྔʹ͸ݶΓ͕͋Δ
    ωοτϫʔΫख਺ྉΛ՝͢͜ͱʹΑͬͯɺωοτϫʔΫ্ͷσʔλྔΛ཈੍͢Δ͜ͱ͕Ͱ͖Δ
    ख਺ྉ͸σʔλαΠζʹൺྫ͢Δ
    τϥϯβΫγϣϯͷ*/165਺ɺ065165਺͕ଟ͚Ε͹σʔλαΠζ͸େ͖͘ͳΔ
    ख਺ྉ͸ωοτϫʔΫͷࠞࡶ౓߹͍ʹӨڹ͞ΕΔ
    ର๏ఆ௨՟ͷՁ֨ͱ͸௚઀ؔ܎ͳ͍͕ɺ͜ͷՁ্͕͕֨ΔͱऔҾ਺͕૿͑ΔͨΊख਺ྉ͸্ঢ͠ɺՁ͕֨҆ఆ͍ͯ͠Δ࣌
    ͸ख਺ྉ͕͍҆
    ࢢ৔ͷݪཧʹΑͬͯ໨͕҆Θ͔Δ
    ͲͷτϥϯβΫγϣϯΛϒϩοΫʹऔΓࠐΉ͔͸ϚΠφʔ͕ࣗ༝ʹܾΊΒΕΔ
    ϚΠχϯά΋ϏδωεͳͷͰɺख਺ྉͷߴ͍59͕༏ઌͯ͠औΓࠐ·ΕΔ
    ૹۚऀ͕෷͏
    ిࢠܾࡁͷΑ͏ʹళฮଆ डऔଆෛ୲
    ͕Ͱ͖ͳ͍
    28

    View Slide

  29. ϊʔυɾ΢ΥϨοτͷछྨ
    ϑϧϊʔυ͸11ωοτϫʔΫʹྲྀΕΔτϥϯβΫγϣϯͱϒϩοΫΛݕূ͠ɺਖ਼͍͠ܗࣜͷ΋ͷ͸ࣗϊʔυऔΓࠐΉ
    աڈ͔ΒશͯͷτϥϯβΫγϣϯʢऔҾཤྺʣͱϒϩοΫΛ࣋ͭ
    શͯͷσʔλΛ࣋ͭʹ͸ॏ͗͢ΔͷͰɺϒϩοΫϔομͱࣗ෼ͷ΢ΥϨοτʹؔ܎͢ΔऔҾͷΈΛ࣋ͭܰྔ΢ΥϨοτ
    ʮ417ϊʔυʗ΢ΥϨοτʯ͕͋Δ
    औҾͷݕূ͸Ͱ͖ͳ͍
    ࣗ෼ͷϊʔυΛ࣋ͨͣʹΞυϨεੜ੒΍ૹۚͷͰ͖Δ8FC΢ΥϨοτ΋͋Δ͕ɺηΩϡϦςΟతʹ஫ҙ͕ඞཁ
    ෺ཧతͳૢ࡞ΛߦΘͳ͍ͱૹ͕ۚͰ͖ͳ͍ηΩϡϦςΟ͕ߴ͍ϋʔυ΢ΣΞ΢ΥϨοτ΋͋Δ
    ϞόΠϧ΢ΥϨοτ͸ɺϞόΠϧΞϓϦʹൿີ伴͕ೖ͍ͬͯͯૹ͕ۚͰ͖Δ
    େۚ͸ஔ͘΂͖Ͱ͸ͳ͍
    29

    View Slide

  30. ϒϩοΫνΣʔϯΤΫεϓϩʔϥ
    ࣗ෼ͰϊʔυΛ࣋ͨͳͯ͘΋શͯͷऔҾͱϒϩοΫΛՄࢹԽͰ͖ΔϒϩοΫνΣʔϯΤΫεϓϩʔϥ͕͋Δ
    IUUQTXXXCMPDLDIBJODPNKBFYQMPSFS
    ༷ʑͳ։ൃݩ͔ΒϒϩοΫνΣʔϯΤΫεϓϩʔϥ͕ఏڙ͞Ε͍ͯΔ
    30

    View Slide

  31. ։ൃ༻ωοτϫʔΫ
    ։ൃʹຊ෺ͷϏοτίΠϯΛ࢖͏ͯɺࣗ෼͔Βࣗ෼ʹૹۚͨ͠ͱͯ͠΋ωοτϫʔΫख਺ྉ͕͔͔Δ
    ։ൃ༻ʹؾܰʹૹ͕ۚͰ͖ΔΑ͏ςετωοτ͕ଘࡏ͢Δ
    ςετωοτίΠϯ͸ແՁ஋
    31
    ϝΠϯωοτ
    ʢຊ෺ʣ
    ςετωοτ
    ಠཱ

    View Slide

  32. 'BVDFU
    ։ൃ༻ʹςετωοτϏοτίΠϯ͕΋Β͑Δ'BVDFU ʮऄޱʯͱ͍͏ҙຯ
    ͱ͍͏όϥϚΩॴαʔϏε͕͋Δ
    IUUQTDPJOGBVDFUFVFOCUDUFTUOFU
    ଞʹ΋༷ʑͳ'BVDFU
    32

    View Slide

  33. &UIFSFVNʢΠʔαϦΞϜʣ

    View Slide

  34. &UIFSFVNͷ͸͡·Γ
    ϏοτίΠϯͷج൫ٕज़ʢޙʹʮϒϩοΫνΣʔϯʯͱݺ͹ΕΔΑ͏ʹͳΔʣΛ༻͍ͯ৽͍͠νΣʔϯΛఏҊ
    IUUQTFUIFSFVNPSHFOXIJUFQBQFS೥ʹൃද͞ΕͨϗϫΠτϖʔύʔ
    34

    View Slide

  35. 11ωοτϫʔΫͰͷసૹ
    ࡞੒ͨ͠τϥϯβΫγϣϯΛΠʔαϦΞϜ11ωοτϫʔΫʹϒϩʔυΩϟετ ఻೻
    ͢Δ
    ϊʔυ͸59ͷܗࣜΛνΣοΫ͠ɺϏοτίΠϯͷܗࣜͱͯ͠ਖ਼͚͠Ε͹ɺྡͷϊʔυʹసૹ͍ͯ͘͠
    શͯͷϊʔυ͕ಉ͡59Λ࣋ͭ

    ʢશੈքͷϊʔυʹߦ͖౉Δʣ
    35
    ΞϦε
    Ϙϒ
    59
    ఻೻
    59
    59
    59
    సૹ సૹ
    59
    59
    59
    సૹ
    సૹ
    సૹ
    సૹ


    View Slide

  36. ෼ࢄΞϓϦέʔγϣϯ %"QQT

    શϖʔδͷ59ΛΞϓϦέʔγϣϯʹஔ͖׵͑ͯߟ͑Δ
    ΠʔαϦΞϜϒϩοΫνΣʔϯ্ͰՔಇ͢ΔεϚʔτίϯτϥΫτ͕σϓϩΠ͞ΕΔͱɺͦͷσʔλ΋શੈքͷ෼ࢄ୆ாʹ
    ه࿥͞ΕΔ
    ۭத໿ଋݻఆ૷ஔCZ੪౻ݡ࣐ૣҴాେֶڭत
    36
    ΞϦε
    σϓϩΠ
    సૹ
    సૹ
    సૹ
    సૹ
    సૹ


    %"QQ
    %"QQ
    %"QQ
    %"QQ
    %"QQ
    %"QQ
    %"QQ
    సૹ
    Ϙϒ
    ࢖༻Մೳ
    Ωϟϩϧ
    σϏοτ
    ࢖༻Մೳ
    ࢖༻Մೳ
    ࢖༻Մೳ

    View Slide

  37. %BQQͷཁૉ
    %BQQͷཁૉʢʮϚελϦϯάɾΠʔαϦΞϜʯ1ΑΓʣ
    όοΫΤϯυʢεϚʔτίϯτϥΫτʣ
    ϑϩϯτΤϯυʢ8FC6*ʣ
    σʔλετϨʔδ
    ϝοηʔδ௨৴
    ໊લղܾ
    37
    https://github.com/ethereumbook/ethereumbook/blob/develop/12dapps.asciidoc

    View Slide

  38. %BQQͷσʔλετϨʔδ
    εϚʔτίϯτϥΫτ͸େྔͷσʔλͷอ؅΍ॲཧʹ͸ద͍ͯ͠ͳ͍
    ΦϑνΣʔϯͷσʔλετϨʔδαʔϏεΛར༻
    *1'4΍4XBSNͳͲ11ετϨʔδΛར༻͢Δͱඇதԝूݖతʹ؅ཧՄೳ
    ը૾ɺϏσΦɺΞϓϦέʔγϣϯͷϑϩϯτΤϯυ8FCΠϯλʔϑΣʔεʢ)5.-ɺ$44ɺ+BWB4DSJQUͳͲʣେن໛ͳ੩
    తΞηοτͷ֨ೲ΍഑෍ʹ࠷ద
    38

    View Slide

  39. *1'4
    *OUFS1MBOFUBSZ'JMF4ZTUFN
    *1'4ࣗମ͸ϒϩοΫνΣʔϯͰ͸ͳ͍
    11ωοτϫʔΫ಺ͷϐΞؒͰอଘ͞Ε͍ͯΔΦϒδΣΫτΛ഑৴͢ΔඇதԝूݖܕͷίϯςϯτΞυϨοαϒϧετϨʔ
    δγεςϜ
    ίϯςϯπʢϑΝΠϧʣͷ֤෦෼ͷϋογϡ͕ͦͷϑΝΠϧΛࣝผ͢ΔͨΊʹ࢖༻͞ΕΔ
    ೚ҙͷ*1'4ϊʔυ͔Β೚ҙͷϑΝΠϧΛऔΓग़͠Մೳ
    8FCΞϓϦέʔγϣϯ഑৴༻ϓϩτίϧͱͯ͠)551Λஔ͖׵͑Δߏ૝
    w αʔόͷ11ԽΛଅਐ
    39
    ϋογϡ
    ίϯςϯπΞυϨοαϒϧͷΠϝʔδ
    *%

    View Slide

  40. &3$τʔΫϯʹ*1'4ͰΞΠίϯ෇༩
    ը૾ϑΝΠϧΛ*1'4ʹ֨ೲͨ͠ޙɺ*1'4ͷ*%ΛτʔΫϯDPOUSBDUͷJDPOʹࢦఆͯ͠σϓϩΠ
    IUUQTJQGTJPJQGT2N4C6/NH7:%N[Q)JL4J.R[U3BN(J&HOK8[Z8EFX2P
    40
    $ ipfs add toka.png


    added QmS9bUNmgVYD1mzpHikSiMqztRa7mGiEgnjW3zyWdew1Qo toka.png


    50.82 KiB / 50.82 KiB
    [===========================================================================================
    ===============================================================================] 100.00%

    View Slide

  41. 4XBSN
    *1'4ʹྨࣅͨ͠ίϯςϯτΞυϨοαϒϧ11ετϨʔδγεςϜ
    &UIFSFVN'PVOEBUJPOʹΑͬͯHFUIπʔϧͷҰ෦ͱͯ͠࡞੒
    *1'4ͱಉ༷ʹϑΝΠϧΛ֨ೲ
    ϑϩϯτΤϯυͷιʔείʔυ΋4XBSNʹ֨ೲͯ͠தԝαʔόͰ͸ͳ͘ɺ11γεςϜ͔Β8FCαΠτʹΞΫηεͰ͖Δ
    Α͏ʹ
    41

    View Slide

  42. 4XBSN
    &UIFSTDBOͷ$POUSBDU4PVSDF$PEF΋4XBSNʹอ؅͞Ε͍ͯΔ
    $POUSBDUιʔείʔυͷόΠφϧͱϒϩοΫνΣʔϯʹσϓϩΠ͞ΕͨόΠφϦͷҰகݕূ
    42
    $POUSBDU
    $PEF
    $POUSBDU
    όΠφϦ
    ίϯ
    ύΠϧ

    View Slide

  43. %BQQ
    εϚʔτίϯτϥΫτ αʔόʔαΠυ

    ϑϩϯτΤϯυ
    4XBSNʹ֨ೲ
    ඇதԝूݖܕσʔλετϨʔδɿ*1'4ɺ4XBSN
    ඇதԝूݖܕϝοηʔδ௨৴ϓϩτίϧɿ8IJTQFS
    ϒϩοΫνΣʔϯͰߦ͏ඞཁͷͳ͍௨৴Λ୲౰
    ඇதԝूݖܕωʔϜαʔϏε ໊લղܾ
    ɿ&/4 &UIFSFVN/BNF4FSWJDF

    શͯΛ11ඇதԝूݖͰಈ͔͢ɿ8FC
    43

    View Slide

  44. /'5
    /PO'VOHJCMF5PLFOʢඇ୅ସੑτʔΫϯʣ
    #5$ &5) &3$τʔΫϯͳͲ͸'VOHJCMF5PLFO
    /'5͸ٕज़తʹ͍͢͝ͱ͍͏Θ͚Ͱ͸ͳ͍ʢϏδωεͱͯ͠Ͳ͏׆͔͔͢ʣ
    '5͸ൃߦྔ͕೚ҙʢຕҎ্ʣͰɺ෼ׂՄೳʢখ਺఺ҎԼͷิॿ୯Ґ͕͋ΔʣʹͰ͖Δ
    /'5͸ൃߦྔ͕Ͱɺ෼ׂෆՄೳ
    /'5͕ෳ਺ൃߦ͞Ε͍ͯͨΓ͢Δ͕
    τʔΫϯʹ*%Λৼ͍ͬͯΔύλʔϯ
    ͦΕͧΕͷݸମ͸/'5ͱΈͳ͢
    /'5ʹ͢Δཧ༝͸ॴ༗ݖҠస௥੻ͷಁ໌Խ
    44

    View Slide

  45. δʔϯΞΠυϧ
    &3$ʹҨ఻ࢠ৘ใΛه࿥͠ɺ།ҰແೋͷΞΠυϧΛੜ੒Ͱ͖Δ%BQQήʔϜ
    "*Ͱإͷը૾Λิਖ਼
    ݱࡏ͸αʔϏεऴྃ
    45
    https://prtimes.jp/main/html/rd/p/000000001.000051149.html

    View Slide

  46. ϓϥΠϕʔτʗίϯιʔγΞϜɾϒϩοΫνΣʔϯ
    ύϒϦοΫܕͰ͸ͳ͘ɺࣾͷΈͰར༻͢ΔϓϥΠϕʔτνΣʔϯɺෳ਺ࣾͰར༻͢ΔίϯιʔγΞϜνΣʔϯ͕͋Δ
    ϓϥΠϕʔτʗίϯιʔγΞϜܕʹڞ௨͢Δͷ͸தԝ؅ཧऀ͕͍Δ͜ͱ
    &UIFSFVNΛίϯιʔγΞϜܕʹͨ͠2VPSVN΍)ZQFSMFEHFS#FTVͳͲ&OUFSQSJTF&UIFSFVN͕1P$Ͱ࢖ΘΕΔ͜ͱ͕ଟ
    ͍
    46

    View Slide

  47. ϝλόʔε
    Ծ૝ݱ࣮ۭؒͰ͋Δϝλόʔεʹͯɺ/'5ͷར༻͕ଅਐ͞Ε͍ͯΔ
    ϝλόʔε಺ͷ౔஍Λ/'5Խͯ͠ചങ
    ϝλόʔε಺Ͱ/'5Ξʔτͷചങ
    શϖʔδͰϓϥΠϕʔτʗίϯιʔγΞϜϒϩοΫνΣʔϯͷ࿩Λ͕ͨ͠ɺϝλόʔε΋ಉ༷ʹΦʔϓϯϝλόʔεɺΫϩʔ
    ζυϝλόʔε͕͋Δ
    47

    View Slide

  48. &3$ΛςετωοτͰൃߦ
    IUUQTRJJUBDPNTIVLPCJUFNTEFECEC
    48

    View Slide

  49. &3$Λൃߦ
    IUUQTXJ[BSEPQFO[FQQFMJODPNFSDศརαΠτͰίʔυΛੜ੒ɺίϐϖ
    IUUQTSFNJYFUIFSFVNPSH3FNJYͰσϓϩΠ
    &3$͸σϓϩΠ͚ͨͩ͠Ͱ͸ൃߦ͞Εͳ͍
    σϓϩΠ࣌ʹ͸ரܕ͕Ͱ͖Δ͚ͩ
    TBGFNJOUͰൃߦ
    49

    View Slide

  50. 0QFO4FB5FTUOFUTͰ༡ΜͰΈΔ
    IUUQTUFTUOFUTPQFOTFBJPBDDPVOU
    3JOLFCZͰ઀ଓ
    IUUQTGBVDFUSJOLFCZJP
    'BVDFU ऄޱ͹Βࢃ͖ॴ
    Ͱ5FTUOFUίΠϯΛೖख
    50

    View Slide

  51. ϒϩοΫνΣʔϯͷಛੑΛར༻ͯ͠/'5Λར༻͢Δ
    ʢύϒϩοΫʣϒϩοΫνΣʔϯͷಛ௃
    ߴϓϥΠόγʔɺϘʔμʔϨε
    Ծ໊ੑʢಗ໊·Ͱ͸͍͔ͳ͍ʣΛར༻ͨ͠औҾ
    ϝλόʔεͷΑ͏ͳԾ૝ۭؒͱ૬ੑ͕͍͍
    w ਓछɺੑผɺ೥ྸΛެ։ͤͣʹੈքͷਓʑͱަྲྀ͕Ͱ͖ɺϏδωε͕Ͱ͖Δ
    w ຋༁ٕज़ͷ޲্Ͱݴޠͷน΋ͳ͘ͳΔ
    w ࣗ༝ͳۭؒͷ౸དྷ
    w 5PS
    /'5͕৐͍ͬͯΔϒϩοΫνΣʔϯ͕͍ͭ·Ͱଓ͔͘Λߟ͑Δ
    ͲͷνΣʔϯ͕ੜ͖࢒Γͦ͏Ͱ͔͢ʁ
    ҉߸ࢿ࢈ʢԾ૝௨՟ʣͷಛੑΛཧղ͢΂͖
    51

    View Slide

  52. ࢀߟจݙ
    "OESFBT."OUPOPQPVMPT (BWJO8PPEஶӉ໺խ੖ ോ֋३Ұ࿠؂༁ த৓ݩਉ མ߹বޛٕज़؂म

    མ߹༱հ খྛହஉ ౔԰य़थ ೠ௡੣ߊ ฏࢁᠳ ࡾ௡ᖒαϧόυʔϧক࢘ ࢁޱ࿨ً༁

    ʮϚελϦϯάɾΠʔαϦΞϜεϚʔτίϯτϥΫτͱ%"QQͷߏஙʯΦϥΠϦʔɾδϟύϯ
    ૿ాխ࢙؂मʮσδλϧσʔλΛࢿ࢈ʹม͑Δ࠷ઌ୺εΩϧʂ/'5ϏδωεݟΔ͚ͩϊʔτʯๅౡࣾ
    52

    View Slide

  53. ษڧ͢Δ্Ͱ͓͢͢Ίͷ:PV5VCFνϟϯωϧ
    ೔ຊ҉߸௨՟Ϣʔβձ $$4UVEZ
    ʲ౰ษڧձʳʢ೔ຊޠʣ
    IUUQTXXXZPVUVCFDPNDIBOOFM6$ZFX;.DZ-R2;JWO;RX
    53

    View Slide