猫でもわかるWebプログラミングと副業

本業エンジニアリングマネージャー。副業Webエンジニア。Web開発のヒントや、副業、日常生活のことを書きます。

もやもやブロックチェーンが理解できる!のメモその2: Hyperledger Fabric V1 最新情報の紹介

f:id:yoshiki_utakata:20180125112925j:plain

先日以下のイベントに参加してきました。

connpass.com

今回はIBM研究所の吉濱さんの発表「Hyperledger Fabric V1 最新情報の紹介」を聞きながら僕がとったメモを公開するだけのコーナーです。

以下メモの内容です。

Hyperledger というのはオープンソースコミュニティの名前。

Linux Foudation の中のプロジェクト。

Hyperledger Fabric はオープンソースのブロックチェーン基盤。

ブロックチェーンの基本的機能

  • データ構造
  • トランザクション処理方式
  • コンセンサス(合意)

データ構造

「ブロック」と「ステート」がある。

ブロックは取引を幾つかまとめたもの。ブロックごとにハッシュを持っている。 つまり取引記録。

ステートは口座残高。実はBitCoinはステートを持っていないので、口座残高は、過去の取引の合算によって行われる。

トランザクション処理方式

ビットコインはUTXOという方法。コインの受けわたしなど、決められたいくつかの取引が可能。

スマートコントラクト。プログラマブルでもっと複雑な処置が可能。

コンセンサス方式

POW: 無駄な計算して特定の値を見つけた人がブロックを追加する、という方式でコンセンサスを取っている。 欠点もある。

  • 51%攻撃
  • 電力消費
  • ファイナリティの欠如

ファイナリティの欠如という問題もあり、不正なブロックチェーンは無効化されてしまうので、取引が無かったことになってしまう場合もある。

もっと安全で簡単なコンセンサス方式がいいのではないか。

分散コンセンサス形成アルゴリズム というものがある。低電力でファイナリティを保証しているようなアルゴリズムである。ただ、ノード数が増えるとパフォーマンスが落ちやすいという問題がある。

POWはパブリックだが、分散コンセンサスはPublicではない。

ブロックチェーンとして求められる性質

  • 障害耐性
  • 単一障害点がない
  • 単一信頼点がない

利用技術

Public/POW

  • UTXO: bitcoin
  • Smart Contract: ethereum

Permissioned 分散コンセンサス形成

  • UTXO: Quorum
  • UTXO: Hyperledger Fabric

今後のブロックチェーン

2016年に多くの金融機関が実証実験完了 金融機関以外でも展開

Hyperledger Public のリリース

  • Fabric v0.6
  • Fabric v1.0: 無停止でノードを追加出来なかったりなどの問題を解消
  • Fabric v1.1: 今年リリース予定。パフォーマンスの改善など