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

デジタル空間でのブロックチェーン応用事例 / Blockchain use cases in digital space

デジタル空間でのブロックチェーン応用事例 / Blockchain use cases in digital space

2019/10/5「HAKODATE Developers Conference 2019」の登壇資料です。

4e1cbdfcd220a481546d25eb1de7a152?s=128

Nao Hanamura

October 05, 2019
Tweet

Transcript

  1. 1 デジタル空間でのブロックチェーン応 用事例 HAKODATE Developers Conference 2019 花村直親

  2. 2 名前: 花村直親(@naomasabit) 経歴: エンジニア/ ITコンサル (ITコンサル / SI会社) =>

    データアナリスト / ブロックチェーンR&D / エンジニアリード(デロ イト) => ブロックチェーンスタートアップ共同創業( catabira) => ITコンサル・エンジニアでフリーランス(法人化予定) 最近よくやること:  プロダクト立ち上げ支援、ノード運用、ブロックチェーンデータ分析、 鍵管理、スマートコントラクト設計 etc 最近よく使うもの:  Go, Python, Solidity, Kubernetes, Ethereum 自己紹介 発信: Neutrinoで働くブロックチェーンエンジニアのブロ グ https://www.blockchainengineer.tokyo/ ブロックチェーンをデータから見るノート https://note.mu/naohanamura
  3. 3 過去実績: ・デロイトにて仮想通貨取引分析プラットフォーム開発リード ・株式会社catabira創業とブロックチェーンモニタリング SaaS開発 ・スマートコントラクトの技術書籍監訳「 Solidityプログラミング ブロックチェーン・スマートコントラクト開発入 門」 ・AML/CFT用のブロックチェーン分析ツール開発

    ・その他、スマートコントラクトのトークン設計や金融業での実証実験など 自己紹介 過去の実績一部:
  4. 4 ブロックチェーンについて

  5. 5 https://medium.com/@gomasuda/2019%E5%B9%B4%E6%9C%80%E6%96%B0%E3%82%AB%E3%82%AA%E3%82%B9%E3%8 3%9E%E3%83%83%E3%83%97-%E5%9B%BD%E5%86%85%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E3%83%81 %E3%82%A7%E3%83%BC%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%88%E3%82%A2%E3%83%83%E3 %83%97-c6fb3959a178

  6. 6 ブロックチェーンはビットコインの基幹テクノロジーとして始まった ブロックチェーンを構成する技術要素 トランザクションの電子署名 マイニングによる 二重支払いの防止 P2P通信

  7. 7 ブロックチェーンは第三者の仲介なしに取引が行えるテクノロジー ・クライアント-サー バー方式での接続 ・他のサーバーが中間 にはいり、取引の仲介 を行う。手数料が引か れる ・P2P方式での接続 ・他のサーバーが中間

    に入って仲介をしな い。
  8. 8 SUICA, LINE Pay, PayPay 「電子マネーをどう作るか?」を考えた時の2パターン 第3者を信頼する電子マネー 第3者を挟まない電子マネー Bitcoin, Ethereum

    etc ・第3者の事業者が価値を保証 ・円と同等の価値が保証されている ・第3者がなくなると価値がなくなる ・第3者が介在しない ・法定通貨との保証をしている第3者もいない ・システムの崩壊には参加者全てをなくさない といけない
  9. 9 送金者、着金者、トランザクション の伝播者が改ざんする可能性があ る 信頼する第3者を挟まない場合の問題 問題 電子署名でトランザクションを改ざ んできないように保護する 解決策 マイニングでブロック毎にトランザ

    クションの変更不可能性を高める 電子署名でトランザクションを保護 しても、送金者が自分の鍵で取り 消して二重送金をする可能性があ る
  10. 10 信頼する第3者を挟まない場合、P2Pのネットワーク通信の場合、 トランザクションが改ざんされてしまう可能性がある 送金者A 送金者A 伝播者B 伝播者M 着金者Cを指定し て通貨を送る 悪意を持った伝播

    者Mが送金先を書 き換える 着金者Cを指定し たトランザクション を送る 着金者C 伝播者Bはトランザク ションをネットワーク に伝播する 通 常 攻 撃 例 伝播後、Cの元に 着金する Cの元に着金しな い 着金者C
  11. 11 電子署名でトランザクションを改ざんできないように保護する事 で、信頼する第3者を挟まなくても実現できる 秘密鍵 公開鍵 送金者A 秘密鍵で署名してトランザ クションを改竄できないよ うにする 伝播者M

    秘密鍵を持たない仲介 者Cはトランザクションを 改竄できない 着金者C 送金者Aは秘密鍵 と公開鍵を持つ
  12. 12 秘密鍵を用いて中間者から保護しても、送金者が悪意を持つ場 合、二重支払いを起こす可能性がある 送金者M 着金者B 1.秘密鍵で署名してコーヒーの 対価として通貨をBに送る 2.Bは着金を確認したら対価 としてコーヒーを送る 悪意を持った人がコーヒーを暗号通貨で購入するケース

    送金者M 着金者B 3.コーヒーを受け取った後、秘密鍵で送付済 トランザクションを書き換えて送った通貨を 再利用できるようにする。Mはコーヒーを無 料で入手できる 4.Bは受け取っていたと思った通貨を 失う
  13. 13 送信済のトランザクションを改竄し辛いようにする処理としてマイ ニングがある 1.マイニングを行い、その時点の トランザクションを確定する マイニングとは、トランザクション等とナンス値と呼ばれる任意の数値をまとめてハッシュ化し、一定の数値より 小さくなるナンス値を探す作業 ナンス値 ブロック ハッシュ

    前のブロック ハッシュ ブロック ハッシュ ナンス値 2.前のブロックのハッシュ値を含 めてマイニングを行う 前のブロック ハッシュ ブロック ハッシュ ナンス値 前のブロック ハッシュ ブロック ハッシュ ナンス値
  14. 14 送信済のトランザクションを改竄し辛いようにする処理としてマイ ニングがある ナンス値 ブロック ハッシュ 前のブロック ハッシュ ブロック ハッシュ

    ナンス値 前のブロック ハッシュ ブロック ハッシュ ナンス値 送金者M 送金者Mが、送ったトランザクションを改竄し ようとするにはマイナー相当のパワーが必要 になる 前のブロック ハッシュ ブロック ハッシュ ナンス値
  15. 15 3つの技術要素によって第3者の仲介を挟まない電子マネーが成 り立っている トランザクションの電子署名 マイニングによる 二重支払いの防止 P2P通信

  16. 16 スマートコントラクトと応用事例

  17. 17 ブロックチェーン上で送金以外のプログラムを動かせるスマートコ ントラクトというテクノロジーがある • ビットコインは「送金の合意」プログラ ムの動作に特化している • イーサリアムのようなスマートコントラ クトはより複雑な、通常のシステムに 使われるようなプログラムを動作させ

    る • 変数としてブロックチェーン上に管理 台帳を発行できる
  18. 18 大元の管理台帳であるブロックチェーンの上にプログラムで資産 台帳を定義することができる • プログラムの「変数」上でデジタルア イテム、独自トークンの管理台帳を定 義する • 所有者とトークンIDなどのマッピング が変数で定義できれば動作する

    デジタルアイテムをスマートコントラクトで 表現した規格のERC721
  19. 19 スマートコントラクトではブロックチェーン上に任意資産の管理台 帳を発行できる ID、パラメータ、所有者を変数で持つ事で、アイテムを擬似的に発行できる ID 名前 攻撃力 1001 ブレード ソード

    100 持ち主 A contract ItemToken{ uint256 ID; #ID string name; #名前 mapping (uint256 => address) IdToOwner; #IDと所有アドレスのマッピング uint256 attackPoint; #攻撃力 …. スマートコントラクトでの表現例 (EthereumのSolidity)
  20. 20 仲介する第3者がなく、オープンなために、自由にゲームアイテム をブロックチェーン上で取引ができる デジタルアイテムの取引マーケット「 OpenSea」 ゲームA ゲームB アセット ゲームA アセット

    ゲームB
  21. 21 ゲームアイテムの取引が自由なため、それぞれのゲーム領域を 超えて自由にゲーム経済圏が作れる ゲームA ゲームBア セット ゲームB 変換された ゲームAア セット

    ゲームAア セット 変換された ゲームBア セット Converter
  22. 22 事例:OpenSeaでは様々なゲームのアイテムが取引されている OpenSeaの取引高推移(201810~201904) OpenSea

  23. 23 事例:CryptoKitties / KittyVerseでは、発行した猫のキャラクター を用いて別ゲームで遊べるような構想を描いた

  24. 24 事例:MyCryptoHeroes / MCH+では、発行したキャラクターを用 いて別のゲームを自由に作れるような構想を描いた https://medium.com/mchplus/announcement-mch-c6 cf58ccbe34 https://www.mch.plus/

  25. 25 時間やお金を注いできたゲーム資産がデータとして残ることで、 ゲーム終了後も資産として扱える ゲームA ゲームBア セット ゲームB 変換された ゲームAア セット

    ゲームAア セット 変換された ゲームBア セット Converter
  26. 26 まとめ:ブロックチェーンは価値の移転を手助けする事と相性の良 い技術 電子署名、マイニング、P2P通信といった技術の組み合わせで 第3者の仲介なしの価値移転を実現した スマートコントラクトを活用して、通貨以外のデジタルアセットなど も価値の移転、権利の移転を実現できる。今回はゲーム事例が 主だが、ID管理や権利管理も応用がありうる 価値の移転 基礎技術