Movatterモバイル変換


[0]ホーム

URL:


ブロックチェーンの仕組みと動向(入門編)

2017年1月27日に開催されたNTT Tech Conference #1での講演資料です。

Embed presentation

© 2017 NTT DATA Corporationブロックチェーンの仕組みと動向 (入門編)@NTT Tech Conference #12017年1月27日 (金)株式会社NTTデータ システム技術本部 方式技術部北條 真史
1© 2017 NTT DATA Corporation1. ブロックチェーンとは2. Bitcoin を知る3. ブロックチェーンをもう少し詳しく知る4. ブロックチェーンのいま本日お話する内容
© 2017 NTT DATA Corporation 2ブロックチェーンとは
© 2017 NTT DATA Corporation 3ブロックチェーンを一言で説明すると“P2P ネットワーク上で台帳情報を分散管理する技術”• P2P ネットワーク• サービスの提供と享受の役割を同時に担うノード群のネットワーク• ↔クライアント・サーバ• 台帳情報• 狭義的には、取引の記録• 広義的には、追記型のデータベース• 取引情報 (Tx) をまとめた塊 (ブロック) の連鎖 (チェーン) を参加ノードで分散管理
© 2017 NTT DATA Corporation 4ハッシュチェーン• 自データから暗号学的ハッシュ函数で計算したハッシュ値を次のデータ内に埋め込んで繋ぐデータ構造• あるデータは、1つ前のデータの存在に依存する情報を含む→時系列に沿ったデータの存在証明を実現するデータ構造HashHashHashDataDataData
© 2017 NTT DATA Corporation 5ハッシュチェーン• 作成済みのデータを変更すると、後続の全データに影響………後続するデータはハッシュ値を計算しなおし
© 2017 NTT DATA Corporation 6取引情報への電子署名• 取引には、発行者が電子署名を付与→取引の正当性が第三者により検証可能Tx
© 2017 NTT DATA Corporation 7ブロックチェーンネットワーク• 全ノードが同じブロックチェーンを持つ• 正当性が誰にでも検証できる取引群を、ハッシュチェーンで時系列に繋ぎ合わせて分散管理…
© 2017 NTT DATA Corporation 8ブロックチェーンが実現するもの• P2P ネットワーク上で台帳管理• 中央集権的なサーバ不要• 高可用• ハッシュチェーンに基づく追記型データ構造• 時系列に沿ったデータ管理• 過去のデータを遡って改ざんすることが困難• 取引への電子署名• 第三者が正当性を検証可能
© 2017 NTT DATA Corporation 9Bitcoin を知る
© 2017 NTT DATA Corporation 10Bitcoin とは貨幣の発行や取引を P2P ネットワークで実現する、電子貨幣プラットフォーム• Satoshi Nakamoto と呼ばれる人物 (集団?) が技術文書を公開 (2008)“Bitcoin: A Peer-to-Peer Electronic Cash System”• 最初のブロック生成とクライアントソフトのリリースにより、Bitcoin の運用が開始 (2009)• 先進国を中心に、通貨としての利用に向けシステム導入や法整備が進んでいるhttps://coinmap.org/
© 2017 NTT DATA Corporation 11Bitcoin が扱う情報ブロックチェーンに貨幣 (貨幣単位: BTC) の取引を記録過去の取引を全部合算して現在の残高を計算:UTXO (unspent transaction output)TxBTC2017/1/23 12:30 現在(https://www.btcbox.co.jp/coin/btc/)TxA→CX 送金TxB→AY 送金… …Aの残高 = …-X+Y+…
© 2017 NTT DATA Corporation 12BlockBitcoin のブロックチェーンをつくる• ブロックを生成する行為を“マイニング”と呼ぶ• マイニングに成功すると、報酬が貰える→ビットコインの採掘 = マイニングTx Tx Tx Tx…Prev Hash Nonce①ブロック生成取引ブロック内の最初の取引は特別無から一定金額(※)を自分に送金できる②取引手数料ブロックに含まれる取引の手数料を貰える※4年で半減。現在 12.5BTC ≒ 132万JPY
© 2017 NTT DATA Corporation 13BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target
© 2017 NTT DATA Corporation 14BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target値を変更しながら繰返し計算
© 2017 NTT DATA Corporation 15BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target値を変更しながら繰返し計算条件を充たす nonce を見つけたノードは、完成したブロックをブロードキャストして承認を得る!!!
© 2017 NTT DATA Corporation 16ブロックチェーンの分岐• ブロックチェーンは、ときに分岐する• 全ノードで1本のチェーンを認めるためにコンセンサス (合意) アルゴリズムが必要Proof of Work(作業証明)ビットコインのコンセンサスアルゴリズムの根幹同時期に複数のノードがブロック生成に成功
© 2017 NTT DATA Corporation 17Proof of Work最長のチェーン = 最も多くの計算資源が投入されているPoW を認めることで:• チェーンが分岐しても、1本の正しいチェーンを選んでマイニングが進められる• 過去のブロックを改ざんするためには、主流のチェーンを追い越さなければならない→ネットワーク全体の 51% 以上の計算リソースが必要なので、悪意を持って改ざんすることは実質不可能力こそ正義
© 2017 NTT DATA Corporation 18Bitcoin が実現したこと• 中央集権を排除した貨幣の取引システム• Bitcoin は、システムの仕組みそのものが価値を保証する• Proof of Work• 不特定多数の参加者全員で 1つのチェーンに合意できる• 計算機リソースを投入すれば儲かる競争がシステムを強固に支える
© 2017 NTT DATA Corporation 19Bitcoin の課題• 強大な力を持つマイニングプールの存在• 個人で採掘しようとしても、ちっとも儲からないので、複数人で採掘して、報奨金を分配するマイニングプールが主流• 1つのマイニングプールが全計算リソースの 42% に達した経験あり[3]• 取引は、いつ確定する?• ブロックに組み込まれた段階では、まだ早い• 他のチェーンが主流になってブロックが解かれるかもしれない• 幾つかチェーンが伸びてくれば、確定してもよさそう• 慣習的に、6ブロック繋がれば、確定とみなす• それでも、もしかしたら覆るかもしれない (過去には4ブロックで覆った)→ビットコインの性質上、取引を確定させることは不可能[3] http://www.coindesk.com/bitcoin-miners-ditch-ghash-io-pool-51-attack/
© 2017 NTT DATA Corporation 20ブロックチェーンをもう少し詳しく知る
© 2017 NTT DATA Corporation 21ビザンチン将軍問題• 互いで通信しあうノード群で、正しい提案に合意できるか?• ノードや通信経路が故障する可能性 (クラッシュ障害)• ノードが悪意を持って情報操作を行う可能性• あるノードは、嘘の情報を発信するかもしれない• あるノードは、呼びかけても返事をしないかもしれないビザンチン障害 = クラッシュ障害+悪意を持って起こす障害 = 任意障害• Bitcoin (PoW) は、参加ノードが信頼出来ない P2P 環境におけるビザンチン障害耐性へのアプローチただし、ビザンチン将軍問題を解決してはいないと言われている• ブロックチェーンが覆る可能性 ≠ 0• あくまで最も高い確率の提案に合意する方式
© 2017 NTT DATA Corporation 22public 型ブロックチェーンと permissioned 型ブロックチェーンPublic 型ブロックチェーンPermissioned 型ブロックチェーン不特定多数のノード 参加ノードの種類特定の (単一/複数) 組織内のノード必要インセンティブ (貨幣)不要難しい (不可能?) 取引の確定 可能必須 ビザンチン障害耐性 場合によっては不要Proof of ~Proof of Work (PoW),Proof of Stake (PoS),…合意形成多数決系を採用可Practical Byzantine Fault Tolerance,Paxos, Raft,…
© 2017 NTT DATA Corporation 23ブロックチェーンのいま
© 2017 NTT DATA Corporation 24ブロックチェーン技術の推移ブロックチェーン 1.0ブロックチェーン 2.0ブロックチェーン 3.0時間Bitcoin,Litecoin,Dogecoin, …Ethereum,Hyperledger Fabric,NEM, mijin, …Hyperledger Iroha,IOTA,…適用範囲電子貨幣プラットフォーム分散型アプリケーションプラットフォームスマートコントラクト(契約の自動化)多用途プラットフォームFintech以外の領域への適用
© 2017 NTT DATA Corporation 25スマートコントラクト• ブロックチェーンネットワーク上で、貨幣の取引だけでなく様々な「契約」を実現する仕組み• ノード上で、契約の条件確認、履行まで自律的に実行• 汎用的な言語 (Java, Go 等)や、独自開発の言語でスマートコントラクトを記述し、分散環境上で実行BlockTx Tx Tx Tx…Prev Hash Nonceプログラム登録TxプログラムIDスマートコントラクト実行Tx入力値IDプログラム ID
© 2017 NTT DATA Corporation 26多用途ブロックチェーンの例IOTA• IoT のための、分散台帳基盤• デバイス情報のリアルタイムな共有を、サーバなしで実現する• ブロックレス分散型台帳 Tangle を採用• Tx を追加する際、過去の幾つかの Tx を検証し、有向非巡回グラフ(DAG) を形成• 徐々に Tx が確定度が上がるhttp://iotatoken.com/IOTA_Whitepaper.pdf
© 2017 NTT DATA Corporation 27ブロックチェーン技術における課題• コンセンサスアルゴリズム• PoW は計算リソースを無駄遣いするし、取引確定できない/遅い• Permissioned 型では多数決に近い設計が主流。分散 DB との差はどこに?スケーラビリティがないのはどうする?• スマートコントラクト• 一度ブロックチェーン上にデプロイしたら、実行が取り消せない• 全ノードで同じ処理を実行するため、1ノード以上の性能は出ない(「“分散型”アプリ実行基盤」は誤解を生む表現かも)• 実世界とブロックチェーンの橋渡し• ブロックチェーンネットワークに情報をコミットする人、仕組みをどうやって信用する?
© 2017 NTT DATA Corporation 28まとめ• ブロックチェーンとは“P2P ネットワーク上で台帳情報を分散管理する技術”• P2P ネットワーク: 全ノードで一つの台帳情報を管理• ハッシュチェーン: 取引情報を固めたブロックを時系列に繋ぐ• 電子署名: 第三者が情報の正当性を検証できる• Bitcoin“中央集権なしで実現する電子貨幣プラットフォーム”• Proof of Work: 計算リソース量によって正しいチェーンを認める• ブロックチェーンの変遷• ブロックチェーン1.0: 電子貨幣プラットフォーム• ブロックチェーン2.0: 契約の自動化、分散アプリケーション• ブロックチェーン3.0: Fintech を超えた利活用
© 2017 NTT DATA Corporation本資料に記載されている会社名、製品名は各社の商標または登録商標です。

Recommended

PDF
エンタープライズブロックチェーン構築の基礎
PDF
5分でわかるブロックチェーンの基本的な仕組み
PDF
ブロックチェーンの解説 In.live ppt
PDF
ブロックチェーン技術の基本と応用の可能性
PDF
ブロックチェーン間のインターオペラビリティ概論
PDF
Hyperledger Fabric Private Chaincodeについて
PPTX
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
PDF
マイクロサービス 4つの分割アプローチ
PDF
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
PDF
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
PDF
シリコンバレーの「何が」凄いのか
PDF
Hyperledger Aries 101
PDF
Hyperledger Fabric のプラットフォームおよびインフラ運用
PPTX
ブロックチェーン基礎基本
PDF
NTT研究所におけるYammerの取り組みと、社内Twitterの統計解析
PDF
マルチテナントのアプリケーション実装〜実践編〜
PPTX
ラボラトリーオートメーションのためのソフトウェア思想教育(非プログラマ―が知っておくべきプログラミングの本質)
PDF
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
PPTX
NGINXをBFF (Backend for Frontend)として利用した話
PDF
SSIとDIDで何を解決したいのか?(β版)
PDF
ビットコインとブロックチェーンを初めからていねいに(超基礎編)
PDF
BigQuery で 150万円 使ったときの話
 
PDF
ブロックチェーンの基本構造
PDF
開発速度が速い #とは(LayerX社内資料)
PDF
エンタープライズブロックチェーン基盤のひとつとしてのHyperledger Fabricの強みと課題
PPTX
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
PDF
PlaySQLAlchemy: SQLAlchemy入門
PDF
マイクロにしすぎた結果がこれだよ!
PDF
SQL大量発行処理をいかにして高速化するか
PDF
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-

More Related Content

PDF
エンタープライズブロックチェーン構築の基礎
PDF
5分でわかるブロックチェーンの基本的な仕組み
PDF
ブロックチェーンの解説 In.live ppt
PDF
ブロックチェーン技術の基本と応用の可能性
PDF
ブロックチェーン間のインターオペラビリティ概論
PDF
Hyperledger Fabric Private Chaincodeについて
PPTX
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
PDF
マイクロサービス 4つの分割アプローチ
エンタープライズブロックチェーン構築の基礎
5分でわかるブロックチェーンの基本的な仕組み
ブロックチェーンの解説 In.live ppt
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン間のインターオペラビリティ概論
Hyperledger Fabric Private Chaincodeについて
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
マイクロサービス 4つの分割アプローチ

What's hot

PDF
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
PDF
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
PDF
シリコンバレーの「何が」凄いのか
PDF
Hyperledger Aries 101
PDF
Hyperledger Fabric のプラットフォームおよびインフラ運用
PPTX
ブロックチェーン基礎基本
PDF
NTT研究所におけるYammerの取り組みと、社内Twitterの統計解析
PDF
マルチテナントのアプリケーション実装〜実践編〜
PPTX
ラボラトリーオートメーションのためのソフトウェア思想教育(非プログラマ―が知っておくべきプログラミングの本質)
PDF
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
PPTX
NGINXをBFF (Backend for Frontend)として利用した話
PDF
SSIとDIDで何を解決したいのか?(β版)
PDF
ビットコインとブロックチェーンを初めからていねいに(超基礎編)
PDF
BigQuery で 150万円 使ったときの話
 
PDF
ブロックチェーンの基本構造
PDF
開発速度が速い #とは(LayerX社内資料)
PDF
エンタープライズブロックチェーン基盤のひとつとしてのHyperledger Fabricの強みと課題
PPTX
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
PDF
PlaySQLAlchemy: SQLAlchemy入門
PDF
マイクロにしすぎた結果がこれだよ!
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
シリコンバレーの「何が」凄いのか
Hyperledger Aries 101
Hyperledger Fabric のプラットフォームおよびインフラ運用
ブロックチェーン基礎基本
NTT研究所におけるYammerの取り組みと、社内Twitterの統計解析
マルチテナントのアプリケーション実装〜実践編〜
ラボラトリーオートメーションのためのソフトウェア思想教育(非プログラマ―が知っておくべきプログラミングの本質)
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
NGINXをBFF (Backend for Frontend)として利用した話
SSIとDIDで何を解決したいのか?(β版)
ビットコインとブロックチェーンを初めからていねいに(超基礎編)
BigQuery で 150万円 使ったときの話
 
ブロックチェーンの基本構造
開発速度が速い #とは(LayerX社内資料)
エンタープライズブロックチェーン基盤のひとつとしてのHyperledger Fabricの強みと課題
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
PlaySQLAlchemy: SQLAlchemy入門
マイクロにしすぎた結果がこれだよ!

Viewers also liked

PDF
SQL大量発行処理をいかにして高速化するか
PDF
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
PDF
高解像度スタートアップガイド Part1(Part2/3へ続く)
PDF
高解像度スタートアップガイド Part2(Part3へ続く)
PDF
スタートアップのためのデットファイナンス入門
PDF
170614 iclr reading-public
PDF
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
PDF
HDFS basics from API perspective
PDF
[ICLR2017読み会 @ DeNA] ICLR2017紹介
PDF
ICLR読み会 奥村純 20170617
PPTX
図解 Blockchainの仕組み
PDF
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
PDF
Effective web performance tuning for smartphone
PPTX
(2017.9.7) Neo4jご紹介
PPTX
Token salesについて
PDF
[db tech showcase Tokyo 2017] D33: Deep Learningや、Analyticsのワークロードを加速するには-Ten...
PDF
Apache Hadoop and YARN, current development status
PPTX
DB tech showcase Tokyo 2017「住民情報システムにおけるOracleStandardEditionでの取り組み」
PDF
高解像度スタートアップガイド Part3
PPTX
医療データ解析界隈から見たICLR2017
SQL大量発行処理をいかにして高速化するか
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
高解像度スタートアップガイド Part1(Part2/3へ続く)
高解像度スタートアップガイド Part2(Part3へ続く)
スタートアップのためのデットファイナンス入門
170614 iclr reading-public
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
HDFS basics from API perspective
[ICLR2017読み会 @ DeNA] ICLR2017紹介
ICLR読み会 奥村純 20170617
図解 Blockchainの仕組み
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
Effective web performance tuning for smartphone
(2017.9.7) Neo4jご紹介
Token salesについて
[db tech showcase Tokyo 2017] D33: Deep Learningや、Analyticsのワークロードを加速するには-Ten...
Apache Hadoop and YARN, current development status
DB tech showcase Tokyo 2017「住民情報システムにおけるOracleStandardEditionでの取り組み」
高解像度スタートアップガイド Part3
医療データ解析界隈から見たICLR2017

Similar to ブロックチェーンの仕組みと動向(入門編)

PDF
0からはじめるWeb3入門(WEB1.0 / WEB2.0 / BLOCKCHAIN / Bitcoin / Smart contract / DeFi ...
PPTX
ビットコイン~原理からソースまで~
PDF
電子情報通信学会グローバル社会とビットコイン(山崎)
PDF
Deconstruction of Serverless and blockchain
PDF
ブロックチェーン技術概論1 輪読
PPTX
Blockchainベーシック
PPTX
EXE #3:ブロックチェーンの研究動向 - セキュリティとプライバシー
PPTX
筑波大学 Blockchain meetup 第一回
PDF
Bckyoto181129
PPTX
デジタルハリウッド大学院 ブロックチェーン研究会第三回 2016年8月25日
PPTX
チュートリアル: ブロックチェーンの計算モデル
PDF
51% 攻撃の原理とシミュレーション
PDF
Blockchain入門
PDF
ブロックチェーン技術の課題と社会応用
PDF
Blockchain innovation
PPTX
170301 いまさら聞けないブロックチェーン①
PDF
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
PPTX
Bitcoinの個人的勉強ノート 第1版(2014年4月15日)
PDF
Blockchain and formal verification (Japanese)
PPTX
170301 いまさら聞けないブロックチェーン②
0からはじめるWeb3入門(WEB1.0 / WEB2.0 / BLOCKCHAIN / Bitcoin / Smart contract / DeFi ...
ビットコイン~原理からソースまで~
電子情報通信学会グローバル社会とビットコイン(山崎)
Deconstruction of Serverless and blockchain
ブロックチェーン技術概論1 輪読
Blockchainベーシック
EXE #3:ブロックチェーンの研究動向 - セキュリティとプライバシー
筑波大学 Blockchain meetup 第一回
Bckyoto181129
デジタルハリウッド大学院 ブロックチェーン研究会第三回 2016年8月25日
チュートリアル: ブロックチェーンの計算モデル
51% 攻撃の原理とシミュレーション
Blockchain入門
ブロックチェーン技術の課題と社会応用
Blockchain innovation
170301 いまさら聞けないブロックチェーン①
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
Bitcoinの個人的勉強ノート 第1版(2014年4月15日)
Blockchain and formal verification (Japanese)
170301 いまさら聞けないブロックチェーン②

More from NTT DATA OSS Professional Services

PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
PDF
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
PDF
Structured Streaming - The Internal -
PDF
Global Top 5 を目指す NTT DATA の確かで意外な技術力
PDF
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PDF
Apache Hadoopの新機能Ozoneの現状
PDF
Spark SQL - The internal -
PDF
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
PDF
Apache Hadoopの未来 3系になって何が変わるのか?
PDF
HDFS Router-based federation
PDF
Application of postgre sql to large social infrastructure
PDF
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~
PDF
商用ミドルウェアのPuppet化で気を付けたい5つのこと
PPTX
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
PDF
Application of postgre sql to large social infrastructure jp
PDF
Distributed data stores in Hadoop ecosystem
PDF
Hadoopエコシステムのデータストア振り返り
PDF
Hadoopエコシステムの最新動向とNTTデータの取り組み (OSC 2016 Tokyo/Spring 講演資料)
PDF
Apache Hadoop 2.8.0 の新機能 (抜粋)
PDF
20170303 java9 hadoop
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Structured Streaming - The Internal -
Global Top 5 を目指す NTT DATA の確かで意外な技術力
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
Apache Hadoopの新機能Ozoneの現状
Spark SQL - The internal -
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
Apache Hadoopの未来 3系になって何が変わるのか?
HDFS Router-based federation
Application of postgre sql to large social infrastructure
データ活用をもっともっと円滑に! ~データ処理・分析基盤編を少しだけ~
商用ミドルウェアのPuppet化で気を付けたい5つのこと
今からはじめるPuppet 2016 ~ インフラエンジニアのたしなみ ~
Application of postgre sql to large social infrastructure jp
Distributed data stores in Hadoop ecosystem
Hadoopエコシステムのデータストア振り返り
Hadoopエコシステムの最新動向とNTTデータの取り組み (OSC 2016 Tokyo/Spring 講演資料)
Apache Hadoop 2.8.0 の新機能 (抜粋)
20170303 java9 hadoop

ブロックチェーンの仕組みと動向(入門編)

  • 1.
    © 2017 NTTDATA Corporationブロックチェーンの仕組みと動向 (入門編)@NTT Tech Conference #12017年1月27日 (金)株式会社NTTデータ システム技術本部 方式技術部北條 真史
  • 2.
    1© 2017 NTTDATA Corporation1. ブロックチェーンとは2. Bitcoin を知る3. ブロックチェーンをもう少し詳しく知る4. ブロックチェーンのいま本日お話する内容
  • 3.
    © 2017 NTTDATA Corporation 2ブロックチェーンとは
  • 4.
    © 2017 NTTDATA Corporation 3ブロックチェーンを一言で説明すると“P2P ネットワーク上で台帳情報を分散管理する技術”• P2P ネットワーク• サービスの提供と享受の役割を同時に担うノード群のネットワーク• ↔クライアント・サーバ• 台帳情報• 狭義的には、取引の記録• 広義的には、追記型のデータベース• 取引情報 (Tx) をまとめた塊 (ブロック) の連鎖 (チェーン) を参加ノードで分散管理
  • 5.
    © 2017 NTTDATA Corporation 4ハッシュチェーン• 自データから暗号学的ハッシュ函数で計算したハッシュ値を次のデータ内に埋め込んで繋ぐデータ構造• あるデータは、1つ前のデータの存在に依存する情報を含む→時系列に沿ったデータの存在証明を実現するデータ構造HashHashHashDataDataData
  • 6.
    © 2017 NTTDATA Corporation 5ハッシュチェーン• 作成済みのデータを変更すると、後続の全データに影響………後続するデータはハッシュ値を計算しなおし
  • 7.
    © 2017 NTTDATA Corporation 6取引情報への電子署名• 取引には、発行者が電子署名を付与→取引の正当性が第三者により検証可能Tx
  • 8.
    © 2017 NTTDATA Corporation 7ブロックチェーンネットワーク• 全ノードが同じブロックチェーンを持つ• 正当性が誰にでも検証できる取引群を、ハッシュチェーンで時系列に繋ぎ合わせて分散管理…
  • 9.
    © 2017 NTTDATA Corporation 8ブロックチェーンが実現するもの• P2P ネットワーク上で台帳管理• 中央集権的なサーバ不要• 高可用• ハッシュチェーンに基づく追記型データ構造• 時系列に沿ったデータ管理• 過去のデータを遡って改ざんすることが困難• 取引への電子署名• 第三者が正当性を検証可能
  • 10.
    © 2017 NTTDATA Corporation 9Bitcoin を知る
  • 11.
    © 2017 NTTDATA Corporation 10Bitcoin とは貨幣の発行や取引を P2P ネットワークで実現する、電子貨幣プラットフォーム• Satoshi Nakamoto と呼ばれる人物 (集団?) が技術文書を公開 (2008)“Bitcoin: A Peer-to-Peer Electronic Cash System”• 最初のブロック生成とクライアントソフトのリリースにより、Bitcoin の運用が開始 (2009)• 先進国を中心に、通貨としての利用に向けシステム導入や法整備が進んでいるhttps://coinmap.org/
  • 12.
    © 2017 NTTDATA Corporation 11Bitcoin が扱う情報ブロックチェーンに貨幣 (貨幣単位: BTC) の取引を記録過去の取引を全部合算して現在の残高を計算:UTXO (unspent transaction output)TxBTC2017/1/23 12:30 現在(https://www.btcbox.co.jp/coin/btc/)TxA→CX 送金TxB→AY 送金… …Aの残高 = …-X+Y+…
  • 13.
    © 2017 NTTDATA Corporation 12BlockBitcoin のブロックチェーンをつくる• ブロックを生成する行為を“マイニング”と呼ぶ• マイニングに成功すると、報酬が貰える→ビットコインの採掘 = マイニングTx Tx Tx Tx…Prev Hash Nonce①ブロック生成取引ブロック内の最初の取引は特別無から一定金額(※)を自分に送金できる②取引手数料ブロックに含まれる取引の手数料を貰える※4年で半減。現在 12.5BTC ≒ 132万JPY
  • 14.
    © 2017 NTTDATA Corporation 13BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target
  • 15.
    © 2017 NTTDATA Corporation 14BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target値を変更しながら繰返し計算
  • 16.
    © 2017 NTTDATA Corporation 15BlockBitcoin のマイニング• その実際は、くじ引き「ダイジェストが target 以下になる nonce を見つけよ」Tx Tx Tx Tx…Prev Hash NonceHash( )≤ target値を変更しながら繰返し計算条件を充たす nonce を見つけたノードは、完成したブロックをブロードキャストして承認を得る!!!
  • 17.
    © 2017 NTTDATA Corporation 16ブロックチェーンの分岐• ブロックチェーンは、ときに分岐する• 全ノードで1本のチェーンを認めるためにコンセンサス (合意) アルゴリズムが必要Proof of Work(作業証明)ビットコインのコンセンサスアルゴリズムの根幹同時期に複数のノードがブロック生成に成功
  • 18.
    © 2017 NTTDATA Corporation 17Proof of Work最長のチェーン = 最も多くの計算資源が投入されているPoW を認めることで:• チェーンが分岐しても、1本の正しいチェーンを選んでマイニングが進められる• 過去のブロックを改ざんするためには、主流のチェーンを追い越さなければならない→ネットワーク全体の 51% 以上の計算リソースが必要なので、悪意を持って改ざんすることは実質不可能力こそ正義
  • 19.
    © 2017 NTTDATA Corporation 18Bitcoin が実現したこと• 中央集権を排除した貨幣の取引システム• Bitcoin は、システムの仕組みそのものが価値を保証する• Proof of Work• 不特定多数の参加者全員で 1つのチェーンに合意できる• 計算機リソースを投入すれば儲かる競争がシステムを強固に支える
  • 20.
    © 2017 NTTDATA Corporation 19Bitcoin の課題• 強大な力を持つマイニングプールの存在• 個人で採掘しようとしても、ちっとも儲からないので、複数人で採掘して、報奨金を分配するマイニングプールが主流• 1つのマイニングプールが全計算リソースの 42% に達した経験あり[3]• 取引は、いつ確定する?• ブロックに組み込まれた段階では、まだ早い• 他のチェーンが主流になってブロックが解かれるかもしれない• 幾つかチェーンが伸びてくれば、確定してもよさそう• 慣習的に、6ブロック繋がれば、確定とみなす• それでも、もしかしたら覆るかもしれない (過去には4ブロックで覆った)→ビットコインの性質上、取引を確定させることは不可能[3] http://www.coindesk.com/bitcoin-miners-ditch-ghash-io-pool-51-attack/
  • 21.
    © 2017 NTTDATA Corporation 20ブロックチェーンをもう少し詳しく知る
  • 22.
    © 2017 NTTDATA Corporation 21ビザンチン将軍問題• 互いで通信しあうノード群で、正しい提案に合意できるか?• ノードや通信経路が故障する可能性 (クラッシュ障害)• ノードが悪意を持って情報操作を行う可能性• あるノードは、嘘の情報を発信するかもしれない• あるノードは、呼びかけても返事をしないかもしれないビザンチン障害 = クラッシュ障害+悪意を持って起こす障害 = 任意障害• Bitcoin (PoW) は、参加ノードが信頼出来ない P2P 環境におけるビザンチン障害耐性へのアプローチただし、ビザンチン将軍問題を解決してはいないと言われている• ブロックチェーンが覆る可能性 ≠ 0• あくまで最も高い確率の提案に合意する方式
  • 23.
    © 2017 NTTDATA Corporation 22public 型ブロックチェーンと permissioned 型ブロックチェーンPublic 型ブロックチェーンPermissioned 型ブロックチェーン不特定多数のノード 参加ノードの種類特定の (単一/複数) 組織内のノード必要インセンティブ (貨幣)不要難しい (不可能?) 取引の確定 可能必須 ビザンチン障害耐性 場合によっては不要Proof of ~Proof of Work (PoW),Proof of Stake (PoS),…合意形成多数決系を採用可Practical Byzantine Fault Tolerance,Paxos, Raft,…
  • 24.
    © 2017 NTTDATA Corporation 23ブロックチェーンのいま
  • 25.
    © 2017 NTTDATA Corporation 24ブロックチェーン技術の推移ブロックチェーン 1.0ブロックチェーン 2.0ブロックチェーン 3.0時間Bitcoin,Litecoin,Dogecoin, …Ethereum,Hyperledger Fabric,NEM, mijin, …Hyperledger Iroha,IOTA,…適用範囲電子貨幣プラットフォーム分散型アプリケーションプラットフォームスマートコントラクト(契約の自動化)多用途プラットフォームFintech以外の領域への適用
  • 26.
    © 2017 NTTDATA Corporation 25スマートコントラクト• ブロックチェーンネットワーク上で、貨幣の取引だけでなく様々な「契約」を実現する仕組み• ノード上で、契約の条件確認、履行まで自律的に実行• 汎用的な言語 (Java, Go 等)や、独自開発の言語でスマートコントラクトを記述し、分散環境上で実行BlockTx Tx Tx Tx…Prev Hash Nonceプログラム登録TxプログラムIDスマートコントラクト実行Tx入力値IDプログラム ID
  • 27.
    © 2017 NTTDATA Corporation 26多用途ブロックチェーンの例IOTA• IoT のための、分散台帳基盤• デバイス情報のリアルタイムな共有を、サーバなしで実現する• ブロックレス分散型台帳 Tangle を採用• Tx を追加する際、過去の幾つかの Tx を検証し、有向非巡回グラフ(DAG) を形成• 徐々に Tx が確定度が上がるhttp://iotatoken.com/IOTA_Whitepaper.pdf
  • 28.
    © 2017 NTTDATA Corporation 27ブロックチェーン技術における課題• コンセンサスアルゴリズム• PoW は計算リソースを無駄遣いするし、取引確定できない/遅い• Permissioned 型では多数決に近い設計が主流。分散 DB との差はどこに?スケーラビリティがないのはどうする?• スマートコントラクト• 一度ブロックチェーン上にデプロイしたら、実行が取り消せない• 全ノードで同じ処理を実行するため、1ノード以上の性能は出ない(「“分散型”アプリ実行基盤」は誤解を生む表現かも)• 実世界とブロックチェーンの橋渡し• ブロックチェーンネットワークに情報をコミットする人、仕組みをどうやって信用する?
  • 29.
    © 2017 NTTDATA Corporation 28まとめ• ブロックチェーンとは“P2P ネットワーク上で台帳情報を分散管理する技術”• P2P ネットワーク: 全ノードで一つの台帳情報を管理• ハッシュチェーン: 取引情報を固めたブロックを時系列に繋ぐ• 電子署名: 第三者が情報の正当性を検証できる• Bitcoin“中央集権なしで実現する電子貨幣プラットフォーム”• Proof of Work: 計算リソース量によって正しいチェーンを認める• ブロックチェーンの変遷• ブロックチェーン1.0: 電子貨幣プラットフォーム• ブロックチェーン2.0: 契約の自動化、分散アプリケーション• ブロックチェーン3.0: Fintech を超えた利活用
  • 30.
    © 2017 NTTDATA Corporation本資料に記載されている会社名、製品名は各社の商標または登録商標です。

[8]ページ先頭

©2009-2025 Movatter.jp