Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
デジタル空間でのブロックチェーン応用事例 / Blockchain use cases in ...
Search
Nao Hanamura
October 05, 2019
Technology
0
640
デジタル空間でのブロックチェーン応用事例 / Blockchain use cases in digital space
2019/10/5「HAKODATE Developers Conference 2019」の登壇資料です。
Nao Hanamura
October 05, 2019
Tweet
Share
More Decks by Nao Hanamura
See All by Nao Hanamura
PMFを生み続ける意志力 #pmconf2022
naomasabit
6
11k
寄り道禁止!LayerX インボイスの爆速開発を支えるロードマップ作り / how-to-create-layerx-invoice-roadmap
naomasabit
7
25k
SHIEDLにおけるGKE, CircleCIを活用したサービス、フルノードの基盤開発 / SHIEDL-blockchain-full-node-infrastructure
naomasabit
1
660
DEXのデータを分析してインサイトを掘り出す / DEX Analysis
naomasabit
1
980
セキュリティインシデント事例とブロックチェーンモニタリング・分析サービスcatabiraのご紹介 / Case of security incidents of cryptocurreny and introduction of blockchain monitoring and analysis service "catabira"
naomasabit
0
730
Yellow Paper から読み解くEthereumブロックチェーンの詳細仕様 / Reading out specifications from Ethereum Yellow Paper
naomasabit
10
10k
有名なスマートコントラクト脆弱性・ハックについての復習 / Widely known vulnerability of smart contract
naomasabit
2
1.2k
ブロックチェーンサービスのセキュリティを考える
naomasabit
12
8.1k
Other Decks in Technology
See All in Technology
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
190
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
AIチャットボット開発への生成AI活用
ryomrt
0
170
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
いざ、BSC討伐の旅
nikinusu
2
780
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Why Our Code Smells
bkeepers
PRO
334
57k
Code Review Best Practice
trishagee
64
17k
4 Signs Your Business is Dying
shpigford
180
21k
Designing for humans not robots
tammielis
250
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Bash Introduction
62gerente
608
210k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Building Applications with DynamoDB
mza
90
6.1k
Transcript
1 デジタル空間でのブロックチェーン応 用事例 HAKODATE Developers Conference 2019 花村直親
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 過去実績: ・デロイトにて仮想通貨取引分析プラットフォーム開発リード ・株式会社catabira創業とブロックチェーンモニタリング SaaS開発 ・スマートコントラクトの技術書籍監訳「 Solidityプログラミング ブロックチェーン・スマートコントラクト開発入 門」 ・AML/CFT用のブロックチェーン分析ツール開発
・その他、スマートコントラクトのトークン設計や金融業での実証実験など 自己紹介 過去の実績一部:
4 ブロックチェーンについて
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 ブロックチェーンはビットコインの基幹テクノロジーとして始まった ブロックチェーンを構成する技術要素 トランザクションの電子署名 マイニングによる 二重支払いの防止 P2P通信
7 ブロックチェーンは第三者の仲介なしに取引が行えるテクノロジー ・クライアント-サー バー方式での接続 ・他のサーバーが中間 にはいり、取引の仲介 を行う。手数料が引か れる ・P2P方式での接続 ・他のサーバーが中間
に入って仲介をしな い。
8 SUICA, LINE Pay, PayPay 「電子マネーをどう作るか?」を考えた時の2パターン 第3者を信頼する電子マネー 第3者を挟まない電子マネー Bitcoin, Ethereum
etc ・第3者の事業者が価値を保証 ・円と同等の価値が保証されている ・第3者がなくなると価値がなくなる ・第3者が介在しない ・法定通貨との保証をしている第3者もいない ・システムの崩壊には参加者全てをなくさない といけない
9 送金者、着金者、トランザクション の伝播者が改ざんする可能性があ る 信頼する第3者を挟まない場合の問題 問題 電子署名でトランザクションを改ざ んできないように保護する 解決策 マイニングでブロック毎にトランザ
クションの変更不可能性を高める 電子署名でトランザクションを保護 しても、送金者が自分の鍵で取り 消して二重送金をする可能性があ る
10 信頼する第3者を挟まない場合、P2Pのネットワーク通信の場合、 トランザクションが改ざんされてしまう可能性がある 送金者A 送金者A 伝播者B 伝播者M 着金者Cを指定し て通貨を送る 悪意を持った伝播
者Mが送金先を書 き換える 着金者Cを指定し たトランザクション を送る 着金者C 伝播者Bはトランザク ションをネットワーク に伝播する 通 常 攻 撃 例 伝播後、Cの元に 着金する Cの元に着金しな い 着金者C
11 電子署名でトランザクションを改ざんできないように保護する事 で、信頼する第3者を挟まなくても実現できる 秘密鍵 公開鍵 送金者A 秘密鍵で署名してトランザ クションを改竄できないよ うにする 伝播者M
秘密鍵を持たない仲介 者Cはトランザクションを 改竄できない 着金者C 送金者Aは秘密鍵 と公開鍵を持つ
12 秘密鍵を用いて中間者から保護しても、送金者が悪意を持つ場 合、二重支払いを起こす可能性がある 送金者M 着金者B 1.秘密鍵で署名してコーヒーの 対価として通貨をBに送る 2.Bは着金を確認したら対価 としてコーヒーを送る 悪意を持った人がコーヒーを暗号通貨で購入するケース
送金者M 着金者B 3.コーヒーを受け取った後、秘密鍵で送付済 トランザクションを書き換えて送った通貨を 再利用できるようにする。Mはコーヒーを無 料で入手できる 4.Bは受け取っていたと思った通貨を 失う
13 送信済のトランザクションを改竄し辛いようにする処理としてマイ ニングがある 1.マイニングを行い、その時点の トランザクションを確定する マイニングとは、トランザクション等とナンス値と呼ばれる任意の数値をまとめてハッシュ化し、一定の数値より 小さくなるナンス値を探す作業 ナンス値 ブロック ハッシュ
前のブロック ハッシュ ブロック ハッシュ ナンス値 2.前のブロックのハッシュ値を含 めてマイニングを行う 前のブロック ハッシュ ブロック ハッシュ ナンス値 前のブロック ハッシュ ブロック ハッシュ ナンス値
14 送信済のトランザクションを改竄し辛いようにする処理としてマイ ニングがある ナンス値 ブロック ハッシュ 前のブロック ハッシュ ブロック ハッシュ
ナンス値 前のブロック ハッシュ ブロック ハッシュ ナンス値 送金者M 送金者Mが、送ったトランザクションを改竄し ようとするにはマイナー相当のパワーが必要 になる 前のブロック ハッシュ ブロック ハッシュ ナンス値
15 3つの技術要素によって第3者の仲介を挟まない電子マネーが成 り立っている トランザクションの電子署名 マイニングによる 二重支払いの防止 P2P通信
16 スマートコントラクトと応用事例
17 ブロックチェーン上で送金以外のプログラムを動かせるスマートコ ントラクトというテクノロジーがある • ビットコインは「送金の合意」プログラ ムの動作に特化している • イーサリアムのようなスマートコントラ クトはより複雑な、通常のシステムに 使われるようなプログラムを動作させ
る • 変数としてブロックチェーン上に管理 台帳を発行できる
18 大元の管理台帳であるブロックチェーンの上にプログラムで資産 台帳を定義することができる • プログラムの「変数」上でデジタルア イテム、独自トークンの管理台帳を定 義する • 所有者とトークンIDなどのマッピング が変数で定義できれば動作する
デジタルアイテムをスマートコントラクトで 表現した規格のERC721
19 スマートコントラクトではブロックチェーン上に任意資産の管理台 帳を発行できる ID、パラメータ、所有者を変数で持つ事で、アイテムを擬似的に発行できる ID 名前 攻撃力 1001 ブレード ソード
100 持ち主 A contract ItemToken{ uint256 ID; #ID string name; #名前 mapping (uint256 => address) IdToOwner; #IDと所有アドレスのマッピング uint256 attackPoint; #攻撃力 …. スマートコントラクトでの表現例 (EthereumのSolidity)
20 仲介する第3者がなく、オープンなために、自由にゲームアイテム をブロックチェーン上で取引ができる デジタルアイテムの取引マーケット「 OpenSea」 ゲームA ゲームB アセット ゲームA アセット
ゲームB
21 ゲームアイテムの取引が自由なため、それぞれのゲーム領域を 超えて自由にゲーム経済圏が作れる ゲームA ゲームBア セット ゲームB 変換された ゲームAア セット
ゲームAア セット 変換された ゲームBア セット Converter
22 事例:OpenSeaでは様々なゲームのアイテムが取引されている OpenSeaの取引高推移(201810~201904) OpenSea
23 事例:CryptoKitties / KittyVerseでは、発行した猫のキャラクター を用いて別ゲームで遊べるような構想を描いた
24 事例:MyCryptoHeroes / MCH+では、発行したキャラクターを用 いて別のゲームを自由に作れるような構想を描いた https://medium.com/mchplus/announcement-mch-c6 cf58ccbe34 https://www.mch.plus/
25 時間やお金を注いできたゲーム資産がデータとして残ることで、 ゲーム終了後も資産として扱える ゲームA ゲームBア セット ゲームB 変換された ゲームAア セット
ゲームAア セット 変換された ゲームBア セット Converter
26 まとめ:ブロックチェーンは価値の移転を手助けする事と相性の良 い技術 電子署名、マイニング、P2P通信といった技術の組み合わせで 第3者の仲介なしの価値移転を実現した スマートコントラクトを活用して、通貨以外のデジタルアセットなど も価値の移転、権利の移転を実現できる。今回はゲーム事例が 主だが、ID管理や権利管理も応用がありうる 価値の移転 基礎技術