IoT 分野での M2M マイクロペイメントを実現するために生まれた暗号通貨 IOTA の背景と仕組みについて、公式のホワイトペーパーや入門記事を読んで学んだことをまとめます。
ブロックチェーン + IoT
現在の IoT エコシステムは、すべてのデバイスがクラウドサーバを介して互いに通信するクライアント/サーバアーキテクチャに基づいています。
ガートナー社は、2020年までには204億台の IoT デバイスが存在しているだろうと予測しています。
こうした集中型のアーキテクチャでは、IoT デバイスが爆発的に増えていくにつれて、スケーラビリティやセキュリティなどの問題を生じさせるだろうと言われています。通信を仲介するサーバにトラフィックが集中して遅延を生じたり、単一障害点になりサイバー攻撃に対して脆弱になったりしてしまいます。
ブロックチェーンは、デバイスが仲介を必要とせずにデータを交換できる技術として注目を集めています。
ブロックチェーン技術の欠点
ブロックチェーン技術はもともと IoT 用途に作られたものではないため、多くの欠点があります。
取引手数料
取引手数料は、マイクロペイメント(少額決済)には適していません。取引される価値よりも高額な手数料を支払うことになります。2018年1月8日時点での Bitcoin の平均取引手数料は 31 USD (およそ
3,514 JPY) です。
しかし、ブロックチェーン技術における取引手数料はブロック生成者(=マイナー)へのインセンティブとして働くため、取り除くことは困難です。
スケーラビリティ
ブロックチェーンはその性質上、トランザクションが増えるほど時間がかかるというスケーラビリティ問題を抱えています。
2018年1月8日時点では 160,000 を超えるトランザクションが未承認です。トランザクションを承認させることができないばかりに、ユーザーにとって扱いづらく、ユースケースの大多数が実行できないことを意味します。もし早く承認させたければ、より多くの取引手数料を支払わなければいけません。
IOTA とは
IOTA (アイオータ/イオタ)は IoT 分野での M2M マイクロペイメントのために作られた仮想通貨であり、以下の特徴を持ちます。
- スケーラビリティ: IOTA は高いトランザクションスループットに到達可能です。それは並列検証が可能なためです。IOTA の並列検証では、一定間隔で承認されるトランザクションの数に制限がありません
- 取引手数料なし: IOTA には手数料がありません
- 非中央集権: IOTA にはマイナーが存在しません。トランザクションを発行するネットワーク参加者全員がコンセンサスに活動的に参加します。従って、IOTA は他のブロックチェーンよりも非中央集権的です
- 量子耐性: IOTA は Curl という名の新しい3進数のハッシュ関数を用いており、それが量子耐性となります(ヴィンテル二ッツ署名)
Tangle の仕組み
IOTA の根幹となる分散台帳技術が Tangle です。Tangle とブロックチェーンの違いは、そのデータ構造と、合意形成に至るプロセスです。
データ構造: 有向非循環グラフ
Tangle は有向非循環グラフ(DAG: Directed Acyclic Graph)に基づく分散台帳であり、ブロックチェーンとは異なるデータ構造を持ちます。
Tangle グラフは、サイトと呼ばれるトランザクションの集合であり、トランザクションが他のトランザクションへの承認がエッジ(矢印)によって表されます。
合意形成: 取引発行者による承認
IOTA では重要な一つのルールがあります。それは 新規トランザクションを生成する際に過去の2つの未承認トランザクションを承認する必要がある ということです。承認するトランザクションは MCMC(マルコフ連鎖モンテカルロ法) によってランダムに選ばれます。
トランザクションが全て承認した状態のものが、完全に合意されたと見なされます。上記のグラフでは、
- グリーン: 完全に合意されたトランザクション。以後の新規トランザクションすべてが直接または間接的に承認する
- レッド: 完全な合意には至っていないトランザクション
- グレー: チップ。未承認トランザクション
を表しています。
このように、マイナーが存在せず、取引を行う人またはデバイスが過去の取引の承認を行うため、取引手数料を支払う必要がありません。
また、ブロックチェーンのように一定の間隔で限られた取引がブロック単位で合意されるのではなく、並列して取引単位で合意が行われます。そのため、取引が増えれば増えるほど安全性が高まり、効率性が向上します。