ブロックチェーンへの誘い 鹿間章宏 ( 株 ) アイヴィス 2018/11/14 わかみず会講演資料
本日の講演内容 ブロックチェーンの仕組み ブロックチェーンの進化 適用事例の紹介
1 ブロックチェーンの仕組み
ブロックチェーンとは 従来のサーバクライアント+データベースにとって代わる ( と期待されている ) データの記録方法 ビットコインなどの暗号通貨で取引の履歴を記録するために使われており サトシナカモト氏が発明した (S. Nakamoto, Bitcoin: A peer to peer electronic cash system, 2009, http://www.bitcoin.org/bitcoin.pdf) 4
ブロックチェーンの利点 以下の点で注目 期待されている サーバレス 運用コストが安価 ( 事実上 ) 誰にも改竄や不正が不可能 ゼロダウンタイムが実現可能 中央管理者なしでデータ運用を維持管理する 全く新しい国際送金 価値の保存方法
ブロックチェーンの特徴 暗号技術とP2P 技術を応用し データを分散管理しながらもデータの改ざんが事実上不可能という特徴を実現したもの データを参加者全員で持ち合う 分散型台帳とも呼ばれる ブロックチェーン 従来モデル 6
BlockA データ データモデル BlockB データ BlockC データ 前ブロックのハッシュ 前ブロックのハッシュ 前ブロックのハッシュ ナンス ナンス ナンス ハッシュハッシュハッシュ データのブロックがチェーン ( 鎖 ) のように並んでいることがブロックチェーンの名前の由来 新たにブロックを追加する場合にはハッシュがある性質を満たす ( 具体的には 最初のN 桁が0になる ) ようにナンスを求める この手順をProof of Work またはマイニングと呼ぶ 7
コンセンサスアルゴリズム チェーンの記録は複数人でやるため ブロックの生成に同時に成功するとチェーンが分岐してしまう チェーンが分岐した時 ( つまり 矛盾する二つのチェーン情報を受け取ったとき ) には 長い方を正とする この決定手法をコンセンサスアルゴリズムという 8
データ改ざんの検出 矛盾 Block Aのデータが改ざんされていた場合 Block Bに入っているハッシュと ブロックAのハッシュに矛盾が生じる 矛盾を解消するためには Block A 以降のすべてのブロックのナンスを再計算するか Block Aのハッシュが元のものに完全一致するようなナンスを探し当てる必要があるが 現実的でない 比較的新しいブロックであれば 改変の労力は少なくて済むので ビットコインなどの暗号通貨では 少なくとも6 個以上のブロックが後ろにつながっているブロックのみを承認済みとしている 9
ハッシュとは 任意の長さのデータを規則性のない固定長のビット列に変換する関数 およびその関数で変換した結果のことである ブロックチェーンでは 逆演算が出来ない一方向性ハッシュ関数が使われる 例 )SHA 256 ハッシュ 元データ IVIS IVIS2 ハッシュ A701CB61844FD322CD86767564613D1EE2EC19ABB20D3401B486FB779AF5D3C0 B9788B4874E2CEC805D085D56F1B806BB7A4B3265F552127922FF7A240283D08 10
で 何がすごいの? 中央管理者なしで データの正しさを保証できる しかも 不誠実な人やウソつきがいても大丈夫 ( この特徴をビザンチン耐性という ) 例えば 日本の紙幣を偽造できないのと同じように 暗号通貨の所有量を改ざんできない 想像してみてください 暗号通貨と同じように銀行の預金残高のデータを各個人が管理したとしたらどうなるか インターネット空間で トラスト を生み出すことが可能になった 注 ) トラスト セキュリティ 11
2 ブロックチェーンの進化
ブロックチェーンの進歩 従来のブロックチェーンは 単にデータを保管する機能のみを持つデータストアであった ここ数年で 従来のブロックチェーンの機能を強化し プログラムを保管実行する機能 ( スマートコントラクト ) や 一部の参加者だけでデータを共有する方式 ( プライベート型 新しいコンセンサスアルゴリズム ) を持つ ) ブロックチェーンが提案 開発されている 以降のページでは 上記で触れた各要素技術を紹介する 13
コンセンサスアルゴリズム データをブロックに追加し 他の参加者が承認するまでの手順をコンセンサスアルゴリズムと呼ぶ コンセンサスアルゴリズムは 現在のところ以下の 2 つが主流である Proof of Work(PoW, マイニングともいう ) データを追加したい参加者は 解くのが大変だが答え合わせは簡単な数学の問題を解き ブロックの情報の一部に含める 他の人はブロックに書かれた答えが正しいことを確認することで 正しいブロック を決定する Proof of Authority(PoA) データを書き込む参加者を限定し 持ち回りでブロックを生成する方式 14
パブリック型 / プライベート型 ブロックチェーンには データの保管にかかわる参加者を制限しないパブリック型と制限するプライベート型がある パブリック型では データの信頼性をPoWによって担保している プライベート型では信用できる参加者しかいないため 非常にエネルギーがかかるPoWを採用するメリットが皆無であり PoAなどの代替アルゴリズムが採用されることが一般的である 15
スマートコントラクト Vitalik Buterin はブロックチェーンの上で 以下のようなことを実現することを提案し 暗号通貨の Ethereum を開発した プログラムソースコードの保管 参加者のマシン上での上記プログラムの実行 プログラムの実行結果の保管 プログラムの機能には仮想通貨の受け渡しを含められる このアイディアはスマートコントラクトと呼ばれており 世界中のコンピュータをつなげる Vitalik の発想から Ethereum はワールドコンピュータと呼ばれる
各種フレームワークの比較 スマートコントラクトあり スマートコントラクトなし パブリック向け (PoW) 両対応 プライベート向け (PoW 以外 )
従来モデルとの比較 システムアーキテクチャの変化 従来のRDBの機能を代替する存在である データだけでなく 状態変化 ( 仮想通貨のやり取りを含む ) を記録できる ブロックチェーンの発展により データの可用性 耐障害性 整合性 を低コストに保証することができる また データの保管場所を容易に分散可能なので 複数のシステム ( 組織間 企業間 国家間 ) のデータ共有が進むと考えている 従来モデル ブロックチェーン採用モデル 18
ブロックチェーンの長所 短所 トレーサビリティ 改ざん耐性 維持管理費 障害耐性 書き込み反映時間 参加者のコスト負担 ブロックチェーン 高い ( 設計により隠ぺいも可能 ) 誰からも改ざん不可 サーバレスに出来る 1 台のマシンがダウンしてもネットワークからデータ復旧可能 長い ( 数分 ~1 時間 ) 大きい ( ただし プライベートチェーンでは小さい ) 標準的なクエリ言語 2018 年現在 存在しない 複数システムの連携 容易に実現可能 従来モデル (RDB) 低い ( 利用者目線だと ) 管理者は改ざん可能 一般的には高額 あらかじめ障害時に備えてバックアップ等の対策が必要 即時反映 ほぼなし DBMS が整備されており 高速 可能だが時間もコストもかかる 19
3 適用事例紹介
適用事例紹介 1/4 社外秘情報を含むため 本スライドは非公開とさせていただきます
適用事例紹介 2/4 ブロックチェーン自体の特徴を生かしたもの 記録が改ざん出来ない 信頼性が高い 土地の所有権 書類の存在証明 選挙 自動契約 貿易 履歴書サービス 食品の産地証明 宝石の真贋保証 非中央集権 メディア カジノなどの抽選サービス 企業サービスの一部をブロックチェーンに載せることで永続性を保証する 例 ) 発行するポイントをブロックチェーン上で運用する 運営側のコストが安い エストニアでは国で運用している法定暗号通貨が存在 国の保有する個人情報 給料の情報も全てブロックチェーンで管理 税金もブロックチェーンで徴収 22
適用事例紹介 3/4 参加者のマシンパワーを利用するもの 参加者の CPU パワーを利用し 対価として報酬を与える 暗号通貨では ブロックチェーンの記録にユーザのマシンパワーを利用し 対価として暗号通貨を獲得できるようになっている ( マイニング ) 応用として 分散コンピューティングしてその対価に報酬を与えるものも存在 参加者にストレージを提供してもらい 対価として報酬を与える ストレージをブロックチェーン上で提供し 利用者はストレージを分散 DB として利用 Web 広告の代替に Web ページを閲覧している間に 利用者の PC のリソースを用いて暗号通貨をマイニングする ただし この手法は多くのウイルス対策ソフトで NG 判定されている 23
適用事例紹介 4/4 ICO(Initial Coin Offering) ブロックチェーンを用いて資金を調達することの総称 自前で暗号通貨 ( トークン ) を開発し そのトークンを売りに出す この際 このトークンを持つことによる購入者が享受できるメリットをあらかじめ公表する この際のメリットの設定方法によって 大まかに以下のように分類される 分類仮想通貨型会員権 / ファンド型プリペイド型 説明 決済や送金手段として発行されるトークンをあらかじめ安価で配布する 保有数に応じて会員優待や配当を受けられる 事業者が提供する商品やサービスの利用料の対価として使用できるトークン この手法で調達した資金で開発する商品 サービスを提供する場合もある メリット : 信用力の低いスタートアップでも利払いを気にせずに楽に資金調達できる デメリット : 株式上場や銀行からの資金調達に比べ 専門家によるチェックがないため 信憑性が担保しずらい 24
まとめ ブロックチェーンは以下の特徴を持ったデータの記録手段である 改ざんできない 非中央集権 可用性が高い ブロックチェーンは技術的にはビザンチン耐性が最大の発明 すでに多くの企業や団体が ブロックチェーンの利活用 (PoC) を模索している 25