Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
(FCP第二回勉強会)
いまだから知りたい!ブロックチェーンの基礎知識
2018年8月31日日本アイ・ビー・エム株式会社
インダストリー・ソリューションズ事業開発ブロックチェーン・ソリューションズ担当部長 水上 賢
22
ブロックチェーン?
ビットコイン/仮想通貨
海外送金
分散台帳技術(DLT)
FinTech
マイニング サプライチェーン
貿易金融コンソーシアム
非中央集権
スマートコントラクト
パブリック/コンソーシアム/プライベート
Hyperledger/Ethereum/R3
取引の革命
マウントゴックス
ビットコイン分裂
合意形成/ビザンチン将軍問題
coincheck不正流出(NEM)
3
1 ブロックチェーン概要2 様々なブロックチェーン・プラットフォーム3 ブロックチェーン適用事例4 ブロックチェーンをはじめましょう
444
1 ブロックチェーン概要
55
• ウォルマート、BC食品トレーサビリティ
• ブロックチェーン推進協会(BCCC)発足
• 日本ブロックチェーン協会(JBA)発足
• IBM BCクラウドサービス、Garage開始
• Hyperledger Fabric v1.0(商用版)
• Hyperledgerメンバー100+
• 経済産業省BCレポート
• イーサリウムプロジェクト開始
• R3プロジェクト開始
• マウントゴックス事件
• Dell、Expediaがビットコインの受付開始
• ビットコイン運用開始
ブロックチェーンの歴史:仮想通貨からビジネス・ブロックチェーンへ
2008 2009 2010 2011 2012 2013 2014 2015 2016 2017
• サトシ・ナカモトビットコイン論文発表
• キプロス金融危機にてビットコイン価格急騰
• Hyperledgerプロジェクト開始
• JPX、みずほFG等国内金融機関でBC実証実験
• マースク、BC物流サプライチェーン
• 他、金融/非金融でのBC広がり
BC:ブロックチェーン
2018
ビジネス・ブロックチェーンが実証実験から本番運用へ 5
•暗号(仮想)通貨:ビットコインへの注目の高まりから、特に昨年、国内で金融機関を中心にブロックチェーン(あるいは「分散台帳技術」)の活用検討、検証が活発に。
•2017年は、基盤技術の成熟化ともに、金融/非金融で適用検討が本格化。•2018年は、商用運用を目指した活動が活発となっている。
6
ブロックチェーンとは:分散台帳技術(DLT: Distributed Ledger Technology)ネットワークの全取引の履歴を記録する台帳を、それぞれの参加者がもちます。ブロックチェーン技術を用いて台帳管理を非集中化することにより、各種取引の期間・コスト・脆弱性を改善することが期待されています。
保険会社 監査規制当局
企業A 銀行企業B
Blockchain• 全ての参加者は複製された同じ内容の台帳を保持• デジタル署名/暗号化された取引と台帳• 参加者により取引が検証され合意形成により台帳を更新
保険会社 監査規制当局
企業A 銀行企業B
各参加者が個別内容の台帳を保有 決済機関等による集中データ管理 各社システム間での個別のデータ連携
すべての参加者が同一内容の台帳を保有 管理主体を持たない非集中・分散データ管理 ブロックチェーン機能による統一されたデータ連携
与信システムの構築・連携実績 ブロックチェーンでの台帳管理
A社台帳
B社台帳
分散台帳
分散台帳
分散台帳 分散
台帳分散台帳
7
• 分散したノードが同一の情報を保持するためには、• 更新する情報が正しい事• 更新後に、それぞれのノードのデータが同一になること
を確認する必要がある
• この確認を行う仕組みを「コンセンサス」と呼ぶ
• コンセンサスには様々な仕組みを使うことが可能• ビットコインにおける「マイニング」• 多数決• 分散コンセンサス形成アルゴリズム etc.
Q:コンセンサスってなに?
A:「分散したノードが同一の情報を保持」するための仕組み
8
台帳の仕組み (HyperLedger Fabricの例)分散台帳は、前のブロックのハッシュ値とトランザクション、トランザクションのハッシュ値とタイムスタンプからなるブロックのつながりでできています。
分散台帳
ブロック 1020
前ブロックのハッシュ値
トランザクション(TX)
車両証明書の作成
TXのハッシュ値
ブロック生成時間
● ●●
● ● ●
ブロック 1021
前ブロックのハッシュ値
トランザクション(TX)
車両証明書の移転規制機関→製造業者
TXのハッシュ値
ブロック生成時間
ブロック 1022
前ブロックのハッシュ値
トランザクション(TX)
TXのハッシュ値
ブロック生成時間
ブロック 1023
前ブロックのハッシュ値
トランザクション(TX)
TXのハッシュ値
ブロック生成時間
車両証明書の更新 車両証明書の移転製造業者→販売店
ブロック 1024
前ブロックのハッシュ値
トランザクション(TX)
車両証明書の移転販売店→リース会社
TXのハッシュ値
ブロック生成時間
ブロック 1025
前ブロックのハッシュ値
トランザクション(TX)
車両証明書の移転リース会社→借り手
TXのハッシュ値
ブロック生成時間
ブロック 1026
前ブロックのハッシュ値
トランザクション(TX)
TXのハッシュ値
ブロック生成時間
ブロック 1027
前ブロックのハッシュ値
トランザクション(TX)
TXのハッシュ値
ブロック生成時間
車両証明書の移転借り手→廃棄業者 車両証明書の廃棄
ハッシュ関数(要約関数):
• あるデータが与えられた場合にそのデータを代表する数値(ハッシュ値)を得るための関数のこと。
• 元データが少しでも変更されると、全く異なる結果(代表値)が返される。
• 代表値から元データを類推刷ることは不可能。
9
ハッシュ値とは• ハッシュ関数を通し入力データを暗号化された固定長のデータに変換した値。• 入力データを改ざんするとハッシュ値が変わるため、改ざんの防止ができる。• ハッシュ値から、元の入力データを推測するのは困難(一方向性)
AからBに$100送ります
AからCに$100送ります
ハッシュ関数
25F62A5A3D414EC6E20907DF7F367F2B72625AADE552DB64C07933F6044FC49A
7A55DDE3EEBE5AC95E8E41A0FD1085B92417A1D9D7FBC6F72A63BB802F6409FD
入力データ(メッセージ) 固定長のハッシュ値
10
スマートコントラクト事前に定めた条件に基づき、自動的に(人手を介さず)契約の履行を行う事が可能
契約の事前定義 イベント発生 契約執行(データ書換) 決済
1 2 3 4
•事前合意内容に基づき実行条件となるイベント発生
•契約執行(権利義務関係の発生)
•価値移転(所有権の移転)
•金銭債権の場合は、履行の自動化も可能
出所:http://gaiax-blockchain.com/smart-contractの図をもとに、IBMで作図
プログラムによる自動実行関係者で事前合意(プログラミングで実装)
•運用開始後に内容を修正したい場合は、参加者のコンセンサスにより行うコンセンサスの方法は後述•法制度面での整備は経済産業省情報経済課にて「準則の改定」の形で検討中(平成30年1月現在)
取引に伴う処理を実現するためのビジネス・ロジック
取引(トランザクション)– 操作:送金処理– データ:AからBに100,000円
スマート・コントラクト(送金処理)1. Aの残高に余力があるかをチェック2. Aの口座残高を100,000円減額3. Bの口座残高を100,000円増額4. 結果をステートDBに保存