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

ビットコイン送金体験付きブロックチェーン勉強会

 ビットコイン送金体験付きブロックチェーン勉強会

ビットコインテストネットでの送金体験を含んだブロックチェーン勉強会の資料です

Shu Kobuchi

June 13, 2018
Tweet

More Decks by Shu Kobuchi

Other Decks in Technology

Transcript

  1. !2 ϒϩοΫνΣʔϯษڧձ ΞδΣϯμ ビットコイン送金体験 1.ビットコインが解決した問題 ~二重支払問題~  ・インターネットからブロックチェーンへ  ・データ複製問題 2.ビットコインのテストネットで送金体験  ・スマートフォンにウォレットアプリをインストール

     ・ウォレットの初期設定 復元フレーズ  ・Faucetからテストネットビットコイン受取  ・隣同士で送金・受取  ・ブロックチェーンエクスプローラで送金履歴を見てみる 3.ビットコイン送金の仕組み  ・ハッシュ関数とアドレス生成(秘密鍵・公開鍵)  ・トランザクションの作成・ブロードキャスト  ・マイニングによるブロック生成とトランザクション承認  ・二重支払問題  ・ビットコインの発行上限  ・ビットコインの手数料 4.UTXOとトレーサビリティ  ・UTXO構造とトレーサビリティ ブロックチェーン技術と応用 5.イーサリアムとスマートコントラクト  ・イーサリアム(World Wide Computer)  ・スマートコントラクト  ・自律分散型組織(DAO) 6.プライベートブロックチェーン  ・パブリック/プライベートブロックチェーンの比較  ・コンソーシアムブロックチェーンの活用方法 7.パブリックブロックチェーンの発展技術  ・ビットコインのスケーリング問題  ・オンチェーンスケーリング(Bitcoin Cash)  ・オフチェーンスケーリング(ライトニングネットワーク) 8.ブロックチェーンを活用する上での考え方  ・公共トランザクションログ 9.ブロックチェーン適用が期待される事例  ・企業通貨・地域通貨  ・IoTセンサー機器とブロックチェーン  ・シェアリングエコノミー
  2. !4 1ɽϏοτίΠϯ͕ղܾͨ͠໰୊ ʙೋॏࢧ෷໰୊ʙ Πϯλʔωοτ͔ΒϒϩοΫνΣʔϯ΁ ▪ Πϯλʔωοτ͕Ͱ͖ͨͱ͖͔Βɺ෼ࢄٕज़ߏ૝΋͋ͬͯɺPeer to Peer(P2P)Ϛωʔ(தԝ؅ཧऀͷ͍ͳ͍ిࢠϚωʔ)ͷߏ૝΋ ͋Γ·ͨ͠ɻ ▪

    ɹΠϯλʔωοτ͕ݸਓʹྗΛ࣋ͨͤΔ͸ͣͰ͋Γ·͕͢ɺ࣮ࡍ͸ɺGAFA(Google, Amazon, Facebook, Apple)ͷΑ͏ͳڊେIT اۀ͕ੈքతʹྗΛ͍࣋ͬͯ·͢ɻ ▪ ɹ͓ۚ͸ະͩʹۜߦΛج൫ͱͨۚ͠༥ωοτϫʔΫ্Ͱಈ͍͍ͯ·͢ɻP2PϚωʔ͕ͳͥΠϯλʔωοτʹͳ͔ͳ͔ొ৔͠ͳ ͔ͬͨͷͰ͠ΐ͏͔ʁ GAFA(Google, Amazon, Facebook, Apple)
  3. !5 1ɽϏοτίΠϯ͕ղܾͨ͠໰୊ ʙೋॏࢧ෷໰୊ʙ Πϯλʔωοτ͔ΒϒϩοΫνΣʔϯ΁ ▪ ͦΕ͸ɺΠϯλʔωοτ্Ͱͷෳ੡໰୊͕͋Γ·͢ɻίϯϐϡʔλ্Ͱσʔλͷෳ੡͸༰қͰ͢ɻΠϯλʔωοτ্Ͱσʔλͷෳ੡Λ๷͙ʹ͸؅ཧऀ͕ඞཁͰ͢ɻ ▪ ɹྫ͑͹ɺAmazon KindleͰిࢠॻ੶Λߪೖͨ͠ࡍʹ͸ɺAmazon͕Ͳͷ୺຤ʹిࢠॻ੶͕͋Δ͔Λ؅ཧ͍ͯ͠·͢ɻApple ͷiTuneͰߪೖͨ͠ԻָϑΝΠϧ΋ಉ༷Ͱ

    ͢ɻ ▪ ɹSuicaͷΑ͏ͳిࢠϚωʔͩͱɺউखʹ࢒ߴΛ૿΍ͨ͠ΓͰ͖ͳ͍Α͏JR౦೔ຊ͕؅ཧ͍ͯ͠·͢ɻ ▪ ɹͭ·ΓɺࠓͷΠϯλʔωοτ্Ͱ͸ɺ͓ۚΛ͸͡Ίͱ͢ΔݖརΛίϯτϩʔϧ͢ΔͨΊʹ͸தԝ؅ཧऀ͕ඞཁͳͷͰ͢ɻͳ͓ɺP2PͷϑΝΠϧڞ༗γεςϜWinny ͸σʔλͷෳ੡͸੍ޚ͠·ͤΜ ▪ ɹͦ͜ʹొ৔ͨ͠ͷ͕ϏοτίΠϯͰ͢ɻϏοτίΠϯͷج൫ٕज़Ͱ͋ΔϒϩοΫνΣʔϯ͸Πϯλʔωοτͷσʔλෳ੡໰୊Λղܾٕͨ͠ज़ͱݴ͑·͢ɻ ؅ཧ ID 名前 残高 0001 山田太郎 \14,578 0002 佐藤花子 \3,245 0003 鈴木拓也 \5,986 ෼ࢄ
  4. !9 2ɽϏοτίΠϯͷςετωοτͰૹۚମݧ CopayΛΠϯετʔϧ ▪ Apple Store / Google Play StoreʹͯɺʮcopayʯΛݕࡧ

    ▪ Πϯετʔϧ ▪ ※εϚϗΩϟϓνϟ͸iPhoneͷ৔߹ɻAndroidΛ͓࢖͍ͷํ͸ɺదٓಡΈସ͍͑ͯͩ͘͞ɻ
  5. !12 2ɽϏοτίΠϯͷςετωοτͰૹۚମݧ ෮ݩϑϨʔζͱൿີ伴 ▪ ෮ݩϑϨʔζ͸ɺൿີ伴ੜ੒ͷγʔυʹͳΓ·͢ ▪ 伴ଋͷΑ͏ͳ΋ͷͳͷͰɺઈରʹଞਓʹ஌ΒΕͯ͸ͳΓ·ͤΜ ෮ݩϑϨʔζ (χʔϞχοΫίʔ υ)

    ΢ΥϨοτ ̺ ൿີ伴 Ϛελʔ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ࢠ伴 ଙ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴 ̺ ൿີ伴
  6. !27 2ɽϏοτίΠϯͷςετωοτͰૹۚମݧ ঝೝ਺ͷ਺͑ํ ▪ ϚΠφʔใु͸100ঝೝ͞ΕΔ·ͰϩοΫ͞Ε͍ͯͯɺͦΕ·Ͱ࢖༻Ͱ͖·ͤΜ 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(τϥϯβΫγϣϯ) ؚ͕·ΕΔ
  7. !29 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ϋογϡؔ਺ ▪ ϋογϡؔ਺ ▪ Մม௕ͷೖྗ஋ʹର͠ɺݻఆ௕ͷग़ྗ஋Λฦ͠·͢ ▪ ཚ਺Ͱ͸ͳ͍ͷͰɺಉ͡ೖྗ஋͔Β͸ৗʹಉ͡ग़ྗ஋Λಘ·͢ ▪

    ग़ྗ஋͔Βೖྗ஋Λਪଌ͢Δʹ͸΄΅ෆՄೳͰ͢ ɹhttps://www.movable-type.co.uk/scripts/sha256.html
 ɹhttps://goo.gl/Poge2B tonkatsu 6841142de445e6b87c2493c7b6576be00278f83aa5a7bdc025d69d5059042acc tonkatsi 9fe42c2bd129a0d165fcad68d6d426959a041bd6e27a7998f7b0a8d983228418 SHA-256 ϋογϡؔ਺ SHA-256 ϋογϡؔ਺ Ұจࣈม ͑Δ શ͘ҟͳΔ ஋ʹ ೖྗ͸Մม௕ ग़ྗ͸ݻఆ௕ ਪଌෆՄʢෆՄٯʣ
  8. !30 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ΞυϨεੜ੒ʢൿີ伴ɾެ։伴ʣͱެ։伴҉߸ ▪ ൿີ伴͸ཚ਺Λ࢖ͬͯಘ·͢
 256Ϗοτͷ੔਺ͳͷͰɺ256ճίΠϯΛ౤͛ͯ࡞Δ͜ͱ΋Ͱ͖·͢ ▪ ެ։伴͸ପԁۂઢ্ͷεΧϥʔഒࢉͰɺෆՄٯͰ͢ ▪ ΞυϨε͸ެ։伴ͷϋογϡؔ਺ͰෆՄٯͰ͢

    ▪ ൿີ伴Λ஌ΒΕΔͱΞυϨεʹඥͮ͘BTC͕౪·Εͯ͠·͏ͷͰɺ؅ཧ͸ݫॏʹߦΘͳ͚Ε͹ͳΓ·ͤΜ K ެ։伴 Public Key A ΞυϨε Address ϋογϡؔ਺ ʢҰํ޲ʣ ପԁۂઢ্ͷεΧϥʔഒࢉ ʢҰํ޲ʣ ਪଌෆՄʢෆՄٯʣ ਪଌෆՄʢෆՄٯʣ k ൿີ伴 Private Key ೔ཱʮPKIͰ҆৺Ͱ͖Δ৘ใࣾձΛɿୈ2ճʯΑΓ http://www.hitachi.co.jp/Div/jkk/jichitai/column/column003/002.html ެ։伴ج൫PKI (Public Key Infrastructure) ϏοτίΠϯͰ͸ɺA͞Μ͕B͞Μʹૹۚ͢Δͱ ͖ʹɺB͞Μͷެ։伴Ͱ҉߸Խͨ͠ίΠϯΛB͞ Μ͸ࣗ਎ͷൿີ伴Ͱ෮߸Խͯ͠ೖखͰ͖·͢
  9. !31 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ૹۚ࣌ͷτϥϯβΫγϣϯ࡞੒ ▪ ΞϦε͕Ϙϒʹ0.04BTCૹΓ͍ͨ ▪ ΞϦε͸Ωϟϩϧ͔Βड͚औͬͨ0.02BTCɺϘϒ͔Βड͚औͬͨ0.03BTCΛ͍࣋ͬͯΔ ▪ ͦΕΒ͸ΞϦεͷൿີ伴ͰͷΈղৣͯ͠࢖༻ՄೳʹͳΔ ▪

    Ωϟϩϧ͔Βड͚औͬͨ0.02BTCɺϘϒ͔Βड͚औͬͨ0.03BTCΛೖྗ෦(INPUT෦)ʹηοτ͢Δ ▪ ग़ྗ෦(OUTPUT෦)ʹ͸ɺΞϦε͔ΒϘϒ΁0.04BTCͱɺࣗ਎΁ͷ͓௼ΓΛ0.01BTCηοτ͢Δ ▪ ͳ͓ɺINPUT෦ͷ߹ܭͱOUTPUT෦ͷ߹ܭ͸౳͘͠ɺෳࣜ฽هܗࣜʹͳ͍ͬͯΔ ▪ τϥϯβΫγϣϯΛϏοτίΠϯωοτϫʔΫʹϒϩʔυΩϟετ͢ΔʢޙͰৄࡉΛղઆʣ アリス デイヴ キャロル ボブ アリス ૹ͍ۚͯͨ͠ ΩϟϩϧˠΞϦε 0.02BTC ૹ͍ۚͯͨ͠ σΠϰˠΞϦε 0.03BTC τϥϯβΫγϣϯ ΩϟϩϧˠΞϦ ε 0.02BTC σΠϰˠΞϦε 0.03BTC INPUT OUTPUT ΞϦεˠϘϒ 0.04BTC ߹ܭ0.05BTC ߹ܭ0.05BTC ࣗ਎΁ͷ͓௼Γ 0.01BTC ΞϦεͷൿີ伴ͰͷΈղ ৣͯ͠࢖༻ՄೳʹͳΔ ͜ͷ୯ҐΛUTXOͱ͍ ͏
  10. !33 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ೋॏࢧ෷ͷߦํ Memory Pool(mempool) ࠷৽ϒϩοΫ ະঝೝTX(τϥϯβΫγϣϯ) ؚ͕·ΕΔ ΞϦε Ϙϒ

    Ωϟϩϧ ϚΠφʔX ϚΠφʔY 1BTCΛϘϒ΁ 1BTCΛΩϟϩϧ΁ TX-B TX-C TX-B TX-C TX-B TX-C TX-BΛऔΓࠐΈɺTX-CΛغ٫͢Δ TX-CΛऔΓࠐΈɺTX-BΛغ٫͢Δ ϚΠφʔX͕ϒϩοΫੜ ੒͢Ε͹ɺTX-B͕ঝೝ
  11. !34 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ϒϩοΫͷ෼ذ ▪ ಉ࣌ʹϒϩοΫ͕ෳ਺Ͱ͖ͯɺϒϩοΫνΣʔϯ͕෼ذ͢Δ͜ͱ͕͋Γ·͢ ▪ ͦͷͱ͖͸ɺνΣʔϯ͕৳ͼͨํ͕উͪͱͳΓɺ୹͍΄͏͸ແޮͱͳΓ·͢ ▪ Ϧιʔε͕ଟׂ͔͘Ε͍ͯΔํ͕ਖ਼͍͠ͱ͍͏ߟ͑ํͰ͢ ▪

    ͜ͷΞϧΰϦζϜΛProof of WorkɿPoWʢ࡞ۀূ໌ʣͱ͍͍·͢ ͨ·ʹಉ͡λΠϛϯάͰϒ ϩοΫ͕ੜ੒͞Εɺϒϩο ΫνΣʔϯ͕෼ذ͢Δ ௕͍ํʹͭͳ͍Ͱ͍͘ ͱ͍͏ϧʔϧ͕͋Δ
  12. !35 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ϒϩοΫͷվ͟Μ ▪ աڈͷϒϩοΫΛॻ͖׵͑Δʹ͸ɺ͚̍ͭͩॻ͖׵͑ͯ΋ɺϒϩοΫ͸ϋογϡͷ࿈࠯Ͱ͋ΔͨΊɺޙͷϒϩοΫ΋φϯεΛ ౰ͯ͸ΊͯϚΠχϯάܭࢉΛ͠ͳ͍ͱ͍͚·ͤΜ ▪ ॻ͖׵͑ͷͨΊͷϚΠχϯάΛ͍ͯ͠Δؒʹ΋ɺਖ਼౰ͳνΣʔϯ͸৳ͼ͍͖ͯ·͢ ▪ ਖ਼౰ͳνΣʔϯΑΓ΋௕͘ͳΒͳ͍ͱʢϦιʔεׂ͕͔Εͳ͍ͱʣ୹͍νΣʔϯͷ··Ͱແޮͳ··Ͱ͢

    ▪ ਖ਼౰ͳ௕͍νΣʔϯΛ௥͍ӽ͢ʹ͸ɺϏοτίΠϯͷϋογϡύϫʔʢϚΠχϯάʹ஫͕ΕΔిྗʣΛωοτϫʔΫ্ͷա൒ ਺ʢ̑̍ˋʣऔΒͳ͍ͱ͍͚·ͤΜ ▪ ͦΕʹ͸͓͕͔͔ۚ͘͢͝ΔͨΊɺվ͟Μ͢ΔΑΓ΋ɺਖ਼౰ͳ௕͍νΣʔϯͷϒϩοΫΛ࡞੒ͯ͠ɺใुΛ΋Βͬͨํ͕͍͍ ͷͰ͢ ▪ ͜ͷΑ͏ͳߦಈܦࡁֶతΠϯηϯςΟϒͰϏοτίΠϯϒϩοΫνΣʔϯ͸ಈ͍͍ͯ·͢ ਖ਼౰ͳ௕͍νΣʔϯΛϚ Πχϯά͢Δํ͕͓ಘ աڈͷϒϩοΫΛॻ͖׵͑Δ ʹ͸ɺ࠶౓ϚΠχϯάܭࢉΛ ΍Γ௚͞ͳ͚Ε͹ͳΒͳ͍
  13. !36 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ϏοτίΠϯϒϩοΫνΣʔϯͷϝϦοτ ▪ τϥετϨε
 ৴པ͢Δୈࡾऀʢதԝ؅ཧऀʣ͕͍ͳͯ͘΋औҾ͕੒Γཱͭ
 औҾ૬खɺϊʔυ΍ϚΠφʔ͕৴པͰ͖ͳͯ͘΋ɺ୭΋͕ϏοτίΠϯͷϧʔϧͰ͋ΔϏοτίΠϯϓϩτίϧͰنఆ͞Εͨ͜ͱ ͔͠Ͱ͖·ͤΜ ▪ վ͟Μ଱ੑ


    ެ։伴҉߸ͱProof of Workʢ࡞ۀূ໌ʣ
 ͨͩ͠ɺPoW͸ϚΠφʔʹΑΔϋογϡύϫʔΛؚΊͨΤίγεςϜͰ࣮ݱͰ͖͍ͯ·͢ ▪ ଱ো֐ੑ
 ੈքதʹϊʔυ͕෼ࢄ͠ɺෆಛఆଟ਺ͷਓ͕ϊʔυΛཱͯΒΕΔͨΊɺ௵ͤ·ͤΜ
 ·ͨɺશͯͷϊʔυ͕ಉ͡σʔλΛ࣋ͪɺಉ͡ಇ͖Λ͢ΔͨΊɺ୯Ұো֐఺͕͋Γ·ͤΜ
  14. !38 3ɽϏοτίΠϯૹۚͷ࢓૊Έ ϏοτίΠϯͷख਺ྉ ▪ ϒϩοΫੜ੒ͰಘΒΕΔϏοτίΠϯใुͱख਺ྉͷྫ ▪ #515000ͷ৔߹͸ɺϒϩοΫใु 12.5 + ख਺ྉ߹ܭ

    0.63025779 = 13.13025779BTC https://blockchain.info/block/0000000000000000003ca88d20895d2535f304cca8afb08e7e5503fcac1da752 参考)混雑時
  15. !40 4ɽUTXOͱτϨʔαϏϦςΟ τϥϯβΫγϣϯΛ೔ຊԁͰྫ͑Δ ▪ ΞϦε͕Ϙϒͷఆ৯԰Ͱ1200ԁͷϥϯνΛ৯΂·ͨ͠ɻ ▪ ΞϦε͸10000ԁࡳΛ2ຕɺ1000ԁࡳΛ2ຕɺ500ԁۄΛ1ຕ͍࣋ͬͯ·͢ɻ ▪ ΞϦε͸ࢧ෷͍ʹɺ1000ԁࡳ1ຕɺ500ԁۄ1ຕΛ࢖͍·ͨ͠ɻ ▪

    1500ԁΛ౉͢ͱɺ͓௼Γ͸300ԁͰ͢ɻ ▪ τϥϯβΫγϣϯ͸INPUT෦ʢऩೖʣͱOUTPUT෦ʢࢧग़ʣͷऩࢧ͕߹͏ෳࣜ฽هͰ͢ɻ アリス ボブ アリス τϥϯβΫγϣϯ 1000ԁࡳ 500ԁۄ INPUT OUTPUT ࢧ෷ 1200ԁ ߹ܭ1500ԁ ͓௼Γ 300ԁ ߹ܭ1500ԁ
  16. !41 4ɽUTXOͱτϨʔαϏϦςΟ UTXOߏ଄ͱ࢒ߴ ▪ UTXO(Unspent Transaction Output) ▪ ϏοτίΠϯͷτϥϯβΫγϣϯߏ଄͸UTXOߏ଄ͱݴΘΕ·͢ɻ ▪

    ϚΠχϯάใुͷτϥϯβΫγϣϯ͚ͩ͸INPUT෦͕ۭͰ͢ɻ(Coinbase Transaction) ▪ উखʹBTCΛݮΒ͢͜ͱ͸Ͱ͖·ͤΜɻʢൿີ伴Λࣦͯ͘͠ಈ͔ͤͳ͘ͳͬͨBTC͸ߟ͑ͳ͍ʣ ▪ উखʹ૿΍͢ʢೋॏࢧ෷ʣͯ΋ɺϒϩοΫੜ੒ʹΑΓɺೋॏࢧ෷͸غ٫͞Εɺ૿΍ͤ·ͤΜ ▪ τϥϯβΫγϣϯͷ࿈ͳΓΛՄࢹతʹදݱ͢Δͱɺ໢ͷ໨ͷΑ͏ʹඳ͚·͢ɻ TX Coinbase TX 空 TX TX TX TX TX TX ࣍ͷTXͷINPUTʹ࢖༻͞Ε ͍ͯͳ͍ɿະ࢖༻ UTXOͷ͔͖ूΊ͕࢒ߴ
  17. !43 5ɽΠʔαϦΞϜͱεϚʔτίϯτϥΫτ ΠʔαϦΞϜ ▪ Vitalik Buterin͕2013೥ʹߟҊ͠ɺ2015೥6݄ʹՔಇ։࢝ ▪ World Wide Computer

    ▪ ETH(ether)Λgas(೩ྉ)ͱͯ͠ɺΞϓϦέʔγϣϯΛσϓϩΠͨ͠Γɺ࣮ߦͰ͖·͢ ▪ σϓϩΠͨ͠ΞϓϦέʔγϣϯ(DAppsɿ෼ࢄΞϓϦέʔγϣϯ)͸ϒϩοΫνΣʔϯ্ʹ͋ΔͨΊվ͟ΜͰ͖·ͤΜ ▪ DApps͸શͯͷϊʔυʹه࿥͞Ε͍ͯ·͢ ▪ ϏοτίΠϯ͸νϡʔϦϯάෆ׬શͰforจͳͲ܁Γฦ͠ͷϓϩάϥϜ͕ॻ͚ͣॳาతͳϓϩάϥϜ͔࣮͠ߦͰ͖ͳ͍ͱ ͜ΖɺΠʔαϦΞϜ͸νϡʔϦϯά׬શͰ܁Γฦ͠จ΍ෳࡶͳϩδοΫͷ࣮ߦΛՄೳʹ͠·ͨ͠ ϒϩοΫ 100 ΞΧ΢ϯτA:100 ether ΞΧ΢ϯτB: 50 ether S ॳظεςʔτ τϥϯβΫγϣϯ from: ΞΧ΢ϯτA to: ΞΧ΢ϯτB Value: 30 ether ϒϩοΫ 101 ΞΧ΢ϯτA:70 ether ΞΧ΢ϯτB: 80 ether S’ ࠷ऴεςʔτ ·ΔͰੈքʹ·͕ͨ ΔҰͭͷίϯϐϡʔ λ σϓϩΠ DApps UTXOͰ͸ͳ͘ɺ ΞΧ΢ϯτϕʔ ε
  18. !44 5ɽΠʔαϦΞϜͱεϚʔτίϯτϥΫτ εϚʔτίϯτϥΫτ ▪ ʮεϚʔτίϯτϥΫτʯ(Smart Contract)͸ɺ1997೥ʹ҉߸ֶऀͷNick Szabo͕ఏএͨ֓͠೦Ͱ͢ɻ ▪ ͜ͷ౰࣌͸ɺϏοτίΠϯ஀ੜ͔Β20೥Ҏ্લͰɺఆٛΛ؆୯ʹ·ͱΊΔͱʮࣗಈతʹܖ໿Λཤߦ͢Δ࢓૊ΈΛεϚʔ τίϯτϥΫτͱݺͿʯͱͳΓ·͢ɻ

    ▪ ࣗಈൢചػ΋ྫͷҰͭͰ͋ΓɺਓରػցͰࣗಈ࣮ߦ͞ΕΔܖ໿͸εϚʔτίϯτϥΫτͰ͢ ▪ ిࢠॻ੶΍σδλϧԻָϑΝΠϧΛWeb্Ͱߪೖ͢Δ͜ͱ΋εϚʔτίϯτϥΫτͱݴ͑ΔͰ͠ΐ͏ ٬ ళһ ಉ͡෺඼ͷചങͰ΋ɺ ਓͷखʹΑΔܖ໿ࣥߦ͸ εϚʔτίϯτϥΫτͰ͸͋Γ· ͤΜ
  19. !45 5ɽΠʔαϦΞϜͱεϚʔτίϯτϥΫτ εϚʔτίϯτϥΫτ ERC20τʔΫϯͰɺICO(Initial Coin Offering)Λ໛ٖͨ͠ਤ ETHΛૹۚ෼͚ͩɺτʔΫϯΛൃߦ͠ɺग़ࢿऀʹૹۚ͢Δ·ͰΛ ࣗಈࣥߦ͠·͢ ᶄͷ෦෼͚͍ͩ͏ͱɺ͓ۚΛೖΕΔͱɺΧοϓ͕ग़͖ͯͯɺණΛ ஫͗ɺιϑτυϦϯΫΛఏڙ͢Δࣗಈൢചػͱࣅ͍ͯ·͢

    ᶅ-1 τʔΫϯૹ৴ ᶅ-3 τʔΫϯফ٫ τʔΫϯൃߦऀ (αʔϏεఏڙऀ) ᶅ-2 αʔϏεఏڙ ᶄ-1 ETHૹۚ ᶃίϯτϥΫτσϓ ϩΠ ʢτʔΫϯఆٛʣ ᶄ-3 τʔΫϯૹ৴ ᶄ-2 τʔΫϯൃߦ ग़ࢿऀ (αʔϏεडӹऀ)
  20. !47 5ɽΠʔαϦΞϜͱεϚʔτίϯτϥΫτ ࣗ཯෼ࢄܕ૊৫ʢDAO) ▪ Ethereumൃ໌ऀVitalik Buterin͕ߟҊͨ͠ϒϩοΫνΣʔϯɾεϚʔτίϯτϥΫτΛ༻͍࣮ͯݱͰ͖Δ DAOͷ֓೦ ࿑ಇऀ͕͍Δ ࿑ಇऀ͕͍ͳ͍ ܦӦऀ͕͍Δ

    ఻౷తͳגࣜձࣾ ϩϘοτΛ࢖͏ձࣾ ܦӦऀ͕͍ͳ͍ DAO AIʹΑΔ׬શࣗಈձࣾ ܖ໿ ϓϩτί ϧ ؅ཧऀ ਓؒ DAOs چདྷͷ૊৫ ਓؒ ैۀһ ਓؒ ਓؒ DAOɿDecentralized Autonomous Organizationʢࣗ཯෼ࢄܕ૊৫ʣ εϚʔτίϯτϥΫ τ͸ܖ໿ϓϩτίϧ ͷҰछ ϒϩοΫঝೝ (ϚΠχϯά)Λߦ͏ ϚΠφʔ ϏοτίΠϯ͸ੈքॳͷDAO
  21. !50 6ɽϓϥΠϕʔτϒϩοΫνΣʔϯ ύϒϦοΫʗϓϥΠϕʔτϒϩοΫνΣʔϯͷಛ௃ ▪ ύϒϦοΫϒϩοΫνΣʔϯ ɹɾϑΝΠφϦςΟ͕ͳ͘ɺϒϩοΫ͕ੵΈॏͳΔ΄Ͳɺ෴Δ֬཰͕̌ʹऩଋ͢Δͱ͍͏ಛੑͰ͢ ɹɾશੈքͷෆಛఆଟ਺Λ૬खʹϒϩοΫνΣʔϯ্ͰऔҾ͕Ͱ͖·͢ ▪ ϓϥΠϕʔτϒϩοΫνΣʔϯ ɹɾϑΝΠφϦςΟػೳΛඋ͍͑ͯΔλΠϓ΋͋Γɺաڈ͔ΒϒϩοΫͷ෼ذ΍࠶ฤ੒͕ى͜Γ·ͤΜ

    ɹɾϒϩοΫͷঝೝΛߦ͏؅ཧϊʔυ΍ɺ৽͘͠ϊʔυΛ௥Ճ͢ΔࡍʹνΣοΫ͠ɺೝՄ͢Δೝূہϊʔυͳ Ͳ΋͋Γ·͢ ɹɾϏοτίΠϯͷProof of WorkͷΑ͏ͳϒϩοΫΛ࡞Δ߹ҙܗ੒ʢίϯηϯαεΞϧΰϦζϜʣ͸٘ਜ਼ʹ͠ ͍ͯΔ΋ͷͷɺߴ଎ʹτϥϯβΫγϣϯͷঝೝΛߦ͑ΔλΠϓͷϓϥΠϕʔτϒϩοΫνΣʔϯ΋͋Γ·͢ ▪ ͍ͣΕʹ͠ΖɺϒϩοΫνΣʔϯͷΈͰγεςϜΛߏங͢Δͷ͸ۃΊͯ೉͘͠ɺDB͸ซ༻͢Δ͜ͱʹͳΓ· ͢ ɹʢ8ɽϒϩοΫνΣʔϯΛ׆༻͢Δ্Ͱͷߟ͑ํɹެڞτϥϯβΫγϣϯϩάࢀরʣ ͜ͷϒϩοΫͰϑΝΠφϦςΟ͕͋Δͱɺ ҎલͷϒϩοΫ͸ॻ͖׵͑Ͱ͖ͳ͘ͳΓ·͢
  22. !53 7ɽύϒϦοΫϒϩοΫνΣʔϯͷൃలٕज़ ϏοτίΠϯͷεέʔϥϏϦςΟ໰୊ ▪ ϒϩοΫͷฏۉੜ੒ִؒ͸10෼ʹ1ͭ ▪ ϏοτίΠϯͷϒϩοΫαΠζ͸1MBͰɺऔҾσʔλؚ͕·ΕΔ ▪ ͭ·Γɺฏۉͯ͠10෼ʹ1MB෼ͷऔҾঝೝ͔͠Ͱ͖ͳ͍ ▪

    ཧ࿦্͸1ඵʹ7τϥϯβΫγϣϯɺ࣮ޮ஋͸1ඵʹ4τϥϯβΫγϣϯ ▪ ϏοτίΠϯૹ͕ۚଟ͘ߦΘΕΔͱɺऔҾঝೝ͕ͳ͔ͳ͔Ͱ͖ͳ͍ૹۚ٧·Γ ▪ ྫ͑͹ɺ௚ۙͰ࠷΋ࠞࡶͨ͠2017೥12݄5,000ԁ෼ͷϏοτίΠϯܾࡁΛ͢ΔͷʹɺωοτϫʔΫख਺ྉ2,000ԁ ฏۉ10෼ִؒ ϒϩοΫαΠζ ্ݶ̍MB 10෼ͱ͍͏୯Ґ ͰऔҾ਺͸ݶΓ͕ ͋Δ
  23. !54 7ɽύϒϦοΫϒϩοΫνΣʔϯͷൃలٕज़ ΦϯνΣʔϯεέʔϦϯά ▪ 2017೥8݄1೔ʹUAHF(User Activated Hard Fork)ʹΑΓɺBitcoin͔ΒBitcoin Cash͕ϋʔυϑΥʔΫ ▪

    Bitcoin Cash͸ϒϩοΫαΠζΛ1MB͔Β8MBʹҾ্͖͛ͯεέʔϥϏϦςΟ໰୊Λղܾ ▪ Bitcoin CashΑΓલʹ͋ͬͨBitcoin Unlimited͸ϒϩοΫαΠζ্ݶΛఫഇ͢ΔΞΠσΞ ▪ ϏοάϒϩοΫͱ͍͏ߟ͑ 2017/8/1 ϋʔυϑΥʔΫ Bitcoin ϒϩοΫαΠζ ্ݶɿ1MB εϞʔϧϒϩοΫ Bitcoin Cash ϒϩοΫαΠζ ্ݶɿ8MB ϏοάϒϩοΫ ϏοτίΠϯɾϒϩοΫνΣʔϯͷΠϝʔδ
  24. !55 7ɽύϒϦοΫϒϩοΫνΣʔϯͷൃలٕज़ ΦϑνΣʔϯεέʔϦϯά ▪ ϒϩοΫνΣʔϯ΁ͷॻ͖ࠐΈΛݮΒ͢ ▪ Կճ͔ૹ͕ۚ͋ͬͨޙͷֹ͚ࠩͩϒϩοΫνΣʔϯʹॻ͖ࠐΉ Alice ྫʣAlice͸ΫϦʔχϯά԰ΛӦΜͰ͓ΓɺBob͸ύϯ԰ΛӦΜͰ͍ͯɺ͓ޓ͍ళΛར ༻͢Δ

    Bob 利用した店 送金者 受取者 支払額 パン屋 Alice Bob ¥1,500 クリーニング屋 Bob Alice ¥2,500 パン屋 Alice Bob ¥2,000 ૬ࡴ͢ΔͳΒAlice͕Bobʹ¥1,000෷͑͹Α͍
  25. !56 7ɽύϒϦοΫϒϩοΫνΣʔϯͷൃలٕज़ ΦϑνΣʔϯεέʔϦϯά ▪ ΦϑνΣʔϯ͸ϏοτίΠϯϒϩοΫνΣʔϯ্ͷԾ૝తͳωοτϫʔΫ ▪ ϥΠτχϯάωοτϫʔΫͷଞʹɺαΠυνΣʔϯͳͲ΋ΦϑνΣʔϯ ▪ ϏοτίΠϯϒϩοΫνΣʔϯ͕̍ͭʹର͠ɺΦϑνΣʔϯ͸͍ͭ͘΋ͷωοτϫʔΫ͕͋Δ ▪

    ҟͳΔωοτϫʔΫؒ͸ߦ͖དྷ͕Ͱ͖ͳ͍ Bitcoin 1st Layer (On-chain) Bitcoin 2nd Layer (Off-chain) ηΧϯυϨΠϠʔ ΦϑνΣʔϯ ϒϩοΫνΣʔϯ௚઀ ΦϯνΣʔϯ Bitcoin ϊʔυ Lightningϊʔυ͸ Bitcoinϊʔυ͕ͳ͍ ͱՔಇ͠ͳ͍ Lightning ϊʔυ Bitcoin ϊʔυ Bitcoin ϊʔυ Lightning ϊʔυ νϟωϧͱ͍͏ ௨৴ܦ࿏
  26. !58 8ɽϒϩοΫνΣʔϯΛ׆༻͢Δ্Ͱͷߟ͑ํ ެڞτϥϯβΫγϣϯϩά ▪ ϒϩοΫνΣʔϯ͸ϚελσʔλΛ࣋ͭͷͰ͸ͳ͘ɺτϥϯβΫγϣϯσʔλΛه࿥͢Δ΋ͷͰ͢ ▪ WikipediaʮϏοτίΠϯʯ
 https://goo.gl/CfT4qd ɹϏοτίΠϯ͸ެڞτϥϯβΫγϣϯϩάΛར༻͍ͯ͠ΔΦʔϓϯιʔεϓϩτίϧʹجͮ͘Peer to

    Peerܕͷܾࡁ໢͓Αͼ҉߸௨՟Ͱ͋Δɻ ID 名前 残高 0001 山田太郎 ¥100,000 0002 佐藤花子 ¥30,000 0003 鈴木拓也 ¥50,000 ID(from) ID(to) 送金額 0001 0004 ¥1,000 0002 0008 ¥4,000 0003 0005 ¥200 Ϛελσʔλ τϥϯβΫγϣϯσʔλ
  27. !60 9ɽϒϩοΫνΣʔϯద༻͕ظ଴͞ΕΔࣄྫ اۀ௨՟ɾ஍Ҭ௨՟ ▪ MUFGίΠϯʢࡾඛUFJۜߦʣ ▪ ࣾ಺Ծ૝௨՟ͱ࣮ͯ͠ূ࣮ݧͨ͠ޙʹɺاۀ௨՟ͱͯ͠େن໛ʹຊ൪ӡ༻༧ఆ ▪ ϓϥΠϕʔτϒϩοΫνΣʔϯHyperledger FabricͰ։ൃ

    ▪ ߦ಺ͷۀ຿ΛεϚʔτίϯτϥΫτͰ௥Ճ͍͚ͯ͠Δ ▪ ࡾඛUFJۜߦޱ࠲Λ࣋ͨͳͯ͘΋ɺMUFGίΠϯ͸࢖͑Δ૝ఆ ▪ ׂΓצʹ΋ศར ▪ কདྷతʹ͸̍ԁະຬͷࢧ෷͍΋αϙʔτ༧ఆʢIoT࿈ܞͷϚΠΫϩϖΠϝϯτΛ૝ఆʁʣ ▪ APIΛެ։͠ɺ։ൃऀ(ೝՄ੍?)͕εϚʔτίϯτϥΫτΛσϓϩΠՄೳ
  28. !61 9ɽϒϩοΫνΣʔϯద༻͕ظ଴͞ΕΔࣄྫ اۀ௨՟ɾ஍Ҭ௨՟ ▪ ඈଭ৴༻ۚݿͷ஍Ҭ௨՟͞Δ΅΅ίΠϯ ɹ ذෞݝߴࢁࢢɾඈଭࢢɾന઒ଜ಺ͷՃໍళͰ࢖༻Ͱ͖Δ஍ҬݶఆͷԾ૝௨՟Ͱ͢ ▪ Ԭࢁݝ੢҄૔ଜͷ࣏ࣗମICO ɹ

    ;Δ͞ͱೲ੫ʹ্ݶ͕͋Δͷʹର͠ɺ࣏ࣗମICO͸ௐୡֹʹ্ݶ͸͋Γ·ͤΜ ⻄粟倉村の⾃治体ICOの実証研究スキーム ⾶騨信⽤⾦庫の地域通貨さるぼぼコイン
  29. !65 ·ͱΊ ϏοτίΠϯͱϒϩοΫνΣʔϯ ▪ ϏοτίΠϯ͸ೋॏࢧ෷໰୊Λղܾ͢ΔͨΊʹɺऔҾΛϒϩοΫԽͯ͠ɺঝೝ͢ΔͨΊͷϚΠχϯάڝ૪Λಋೖ͠ɺޙʹͦͷج൫ٕज़͕ʮϒϩοΫ νΣʔϯʯͱݺ͹ΕΔΑ͏ʹͳΓ·ͨ͠ ▪ τϥϯβΫγϣϯߏ଄͸UTXOͰ͋Γɺೖྗ(ऩೖ)≧ग़ྗ(ࢧग़)ͷෳࣜ฽هܗࣜͰ͢ ▪ τϥϯβΫγϣϯ΋ϒϩοΫ΋ϋογϡͷ࿈࠯Ͱදݱ͞Ε͍ͯ·͢

    ▪ Proof of Workʢ࡞ۀূ໌ʣʹΑΓɺվ͟ΜΛࠔ೉ʹ͍ͯ͠·͢ ▪ ϊʔυͷ෼ࢄ୆ாʹه࿥͞Ε͍ͯΔͷ͸ɺτϥϯβΫγϣϯͰɺϚελσʔλͰ͸͋Γ·ͤΜ TX TX TX Block ϚΠφʔA Block Block͕࠾۷Ͱ͖ͨΒ ωοτϫʔΫʹྲྀ͢ (ϒϩʔυΩϟετ) TX ̍൪৐Γͩͱউརʂ Block Block΋ݕূ͠ɺਖ਼͠ ͚Ε͹ɺۙྡʹసૹ͢ Δ ϚΠφʔB ࢲ΋ϚΠχϯάͯͨ͠ͷ ʹϚΠφʔAʹઌӽ͞Εͨ ෛ͚ͨʂ
  30. !67 ·ͱΊ ༷ʑͳϒϩοΫνΣʔϯͱࠓޙͷൃల ▪ ύϒϦοΫϒϩοΫνΣʔϯͱϓϥΠϕʔτϒϩοΫνΣʔϯ͸ۀ຿΍কདྷΛݟਾ͑ͯɺϓϥοτϑΥʔϜΛબ୒͢Δඞཁ ͕͋Γ·͢ ▪ ύϒϦοΫϒϩοΫνΣʔϯͰ͸ɺϥΠτχϯάωοτϫʔΫͳͲͷݚڀ։ൃ͕੝ΜͰɺύϒϦοΫͷઌਐٕज़ʹ΋஫໨͢ Δඞཁ͕͋Γ·͢ ▪

    ࠷ޙʹɺϒϩοΫνΣʔϯٕज़͸ະख़Ͱ͋Γɺ೔໷ੈքதͷ։ൃऀ͕ͨͪϓϥοτϑΥʔϜͷվળʹऔΓ૊ΜͰ͍Δ͜ͱ͸ ΋ͪΖΜͰ͕͢ɺϒϩοΫνΣʔϯͷ̍૚͚ͩͰશͯΛղܾͤͣɺԼࠨਤͷΑ͏ʹϒϩοΫνΣʔϯ૚͸มߋΛۃྗগͳ͘ ͠ɺϨΠϠʔ͝ͱʹ։ൃͷࣗ༝౓ΛߴΊΔํ޲ʹਐΈͦ͏Ͱ͢ɻ͜Ε͸ΠϯλʔωοτͷOSIࢀরϞσϧͱݺ͹ΕΔԼӈਤ ͷ֓೦ʹࣅ͓ͯΓɺΠϯλʔωοτ2.0ͱݺ͹ΕΔɺϒϩοΫνΣʔϯ΋ϨΠϠʔߏ଄ͰͷൃలΛḷΔ͜ͱͰ͠ΐ͏ɻ