IOTA,Byteball的机制和可能性

はじめに

 ブロックチェーンを実際のビジネスに応用しようとすれば、その特徴だけでなく限界を把握する必要がある。ものによってはブロックチェーンではなく、他のテクノロジーを利用することで効果を発揮することは多々あるはずだ。
 本稿はブロックチェーンと同様に革新的な技術として注目を集めており、ブロックチェーンに取って代わるとまでいわれているDAGについて、難解なものではあるがその仕組みを簡潔に説明する。また、DAGテクノロジーを利用したIOTA、ByteBallの特徴と検証事例を簡潔に、正しい理解を得られるよう心掛け本稿をまとめる。

第一章 DAG

IOTA、Byteballについて触れる前に、本章ではブロックチェーンに取って代わる可能性のある仮想通貨のDAGの技術について解説をしていく

1.1 DAGとは

 IOTA、Byteball共にブロックチェーンではなくDAG(ダグ)を用いた仮想通貨である。分散型元帳の構造にDAG(有向非循環グラフ)組織モデルを活用し、従来の問題点を解決した新しい機能を追加したテクノロジーが登場している。(そもそもDAGとは、技術を表す言葉ではなく、図1のような一方通行で巡回しないグラフのことをDAGという。)
暗号通貨で使用される技術の「DAG」も、このグラフの特性を生かしているため、同じように「DAG」と呼ばれている。

 DAGとは、Directed Acyclic Graphの略であり、訳すとdirected : 方向を持った(定められた)、acyclic : 直線のgraph : グラフ、図式となる。DAGはブロックチェーンを代替する仮想通貨の基盤技術で、中央管理者が存在しない分散型のネットワークを目指して作られている。(ブロックチェーンとは違うが非中央集権という点は同じ。)DAGの構造はビットコインの構造をブロックチェーンからツリーに変えることを提案するGHOSTプロトコルを導入することで、セキュリティ面を向上させることを提唱している。

1.2 DAGの技術的仕組み

仮想通貨システムでは、支払われたはずのお金のデータが消えたり、二重支払いが行われては困るので、その取引が正当であることを担保する仕組みが必要である。ビットコインではブロックチェーンとPoW(プルーフオブワーク)によるコンセンサスアルゴリズムで取引の正しさを担保してきたが、それと同様の役割を担うのがDAGを利用したシステムだ。

 DAGには2つの要素があり、1つはnord(ノード=ネットワークの接点)で、もう1つはエッジ(edge=線)である。(図1であればボックスがノード、矢印がエッジ)
ブロックチェーンは、取引情報をブロックにまとめて、基本、ブロック1つに対して、繋がるブロックは1つで一本のチェーンとなる。DAGではブロックを形成せず、取引情報をひとつずつ処理していき、取引情報ひとつに対して、複数の取引情報がぶら下がる形になる。

図1成長するDAG(BTCNより引用)

黄色: 新しく追加された取引ユニット
グレー: 古く未承認の取引ユニット
緑: ネットワークが合意に達したと考えられる取引ユニット
←矢印: 承認

図1,2,3に示したようなグラフをDAGという。図1中の四角が、DAG型暗号通貨のそれぞれのユーザーノードが発行した「取引を一つ収納したデータの単位」である。横幅が時間の流れを示しており、図の左側が過去で右側が未来となる。より新しい取引が古い取引を承認し、その順番が逆になったり、ループしたりすることはない。DAG型仮想通貨は細かい部分は異なったとしても、基本的にこのような構造を持っている。

図2 IOTAのDAG(IOTA white paperより)

図3 ByteballのDAG(Byteball white paperより)

 DAGの仮想通貨ごとに用語は異なるが、ここではDAGの1単位となるこの四角のことを「取引ユニット」と呼ぶことにする(IOTAでは「チップ」、Byteballの場合「ユニット」)。
DAGはブロックチェーンと同様に分散したノード間で取引記録を行っていく仕組みだ。ブロックチェーンでは取引がたくさん含まれた「ブロック」単位で記録と承認を行うが、DAGを使用する場合、承認される最小単位は取引がひとつ格納された「取引ユニット」になる。この取引ユニットに適切な重み付けを行い、正当な取引記録について合意したとみなすことで,暗号通貨のやり取りをトラストレス(第三者必要なく)に行うことができる。

1.3 ブロックチェーンとの比較

 ブロックチェーンは、取引情報をブロックにまとめて、基本、ブロック1つに対して、繋がるブロックは1つで一本のチェーンとなる。一方、DAGは、ブロックを形成せず、取引情報をひとつずつ処理していき、取引情報1つに対して、複数の取引情報がぶら下がる形になる。また、ブロックチェーンでは、取引情報のブロックをマイナーと呼ばれる担当者が承認し、未発行分の仮想通貨から一部を報酬として得る。一方、DAGは、マイナーという特別な担当者がいるわけではなく、取引をおこなった人が過去に行われた「見ず知らずの誰かが行った未承認の取引」を承認していく。そのため、取引を実際に行っている人が承認を行うので、報酬を与えなくても承認作業が行われることになる。スケーラビリティ問題にさらされないというメリットもある。トランザクションの増加によって1ブロックの容量が足りなくなり、送金遅延などの問題が発生することは、DAGでは無縁となる。DAGでは1ブロックという限られた箱の中にトランザクションが詰め込まれるわけではなく、たくさんのトランザクションが網羅的に繋がって構成されているので、容量の問題はなくなる。




第二章 IOTA

2.1 IOTAの成り立ち

 IOTA(アイオータ)とはドイツ出身のデイビッド・サンステバ氏とドミニク・シャイナー氏によって考案され、2015年10月にリリースされ、IoT(Internet of Things、モノのインターネット)のデバイス同士の通信のために作られた仮想通貨である。通貨単位はMIOTA。同氏らはIOTA財団を設立。
IoTの世界では、世界中に散らばる数千億台のセンサーがネットワークを形成し、必要に応じてリソースを共有しあうことでサービスを組み上げていく。これまでIoTが幾度となく注目をされてきたにも関わらず、明示的な成功が見つかっていないのは経済原理が軽視されてきたからだと考える。IoTプラットフォーマーによる中抜き、デバイスの保守コストはユーザーへ価値を提供し続ければならない企業の財政状況を圧迫している。IOTAはIoTを再定義し、デバイスによるサービスのためのリソース市場としての「モノの経済」をコンセプトに掲げた分散型台帳である。
IoTの例として、車(モノ)をパーキングに駐車をする際に、インターネットに繋がり決済をすることが挙げられる。IOTAはモノのインターネットでの利用が目的のため、パーキングの駐車の例を想像しても分かることだが、使用頻度が高く決済単位は少額となる。既存のビットコインで使われるブロックチェーンでは、マイナーとそれに払う手数料が存在するため、少額決済に使うのは現実的ではない。そのような既存のブロックチェーン技術の欠点をIOTAでは解決しようとしている。

2.2 IOTAの特徴

 IOTAでは、Tangle(タングル)を用いることで送金手数料や決済手数料等の取引手数料が無料となる。一言でいえばブロックチェーン等のマイニングが存在しないので、採掘者グループへの報酬を支払わなくていいからである。ビットコインのような従来の仮想通貨は、ブロックの承認をするために莫大な計算力が必要で、それを提供してくれる採掘者グループの報酬として取引に手数料が支払われている。しかしTangleネットワークのトランザクションの承認は、計算能力の低いIoTデバイスで行うことができる。そのため、莫大な計算力を提供してくれる採掘者グループは必要なくなり、取引手数料の必要は無くなる。小さなデータのやり取りを頻繁に行うIoTではマイクロペイメント(少量取引)は非常に重要で革新的なことである。

2.3 IOTAの技術的仕組み

※第一章で説明したことの重複部分もある

 IOTAはブロックチェーン技術を用いずに,Tangleと呼ばれるDAGを用いている。※Tangle=ダグの考え方で良い 従来のブロックチェーン技術ではトランザクション(取引)を発行する立場と承認する立場の人がいて,一部の人に対しての優遇を引き起こしてしまうという欠点があった。Tangleではブロックという概念が無く、新しいトランザクションが到着すると前の2つのトランザクションを承認する必要があり、分散をさせてデータを記録する。トランザクションを発行するユーザーは別のトランザクションを承認することで,ユーザーの一人ひとりがネットワークセキュリティに貢献することとなる。また、分散をさせてットランザクションの記録をするため、取引が多いほど処理のスピードが高速化され、より多くのトランザクションを処理できることになる。ブロックが存在しないことからスケーラビリティの問題が起きることはない。

 Tangle上に追記されていくトランザクションは、それぞれが独立した「重み」を持っている。ここでいう重みとは、Tangleにおける承認のされやすさを表しており、3のn乗の正の整数で表現される。トランザクションはそのトランザクションを発行したノードが、作業をすればするほど加重が増加する仕組みで、コンフリクトを起こす複数の同一のトランザクション(一般に二重支払いと呼ばれる)を悪用した「攻撃」を排除するために用いられる。

 もう一つの重要な点として、「累積加重」の存在がある。これはトランザクション自体の重みに加え、その後に到着したトランザクションによって直接的・間接的に承認された時、承認した重みを加算することで、加算を算出するというものだ。

例えば、トランザクションA(3)が(括弧内は重みの値)、トランザクションB(1)・C(3)・D(3)・F(1)によって承認された時、トランザクションAは合計11の累積加重をを持つことになる。

 さらにスコアという概念もタングルは取り入れている。これは累積加重とは反対に、新しいトランザクションがジェネシストランザクション(他のすべてのトランザクションに承認されること)に至るまで、承認先のすべてのトランザクションの重みを合計した値をとる。

 例えば、トランザクションF(1)がジェネシストランザクションに至るまでトランザクションA(3)・B(1)・C(3)・D(3)にエッジを持つ時、トランザクションFは11のスコアを持つ。

 ここで攻撃者が故意に二重支払いを起こし、台帳の履歴を改ざんしようとするケースを想定してみる。タングルグラフが「ブロック」を持たず、DAGで台帳を表現している。この時考えられる攻撃ベクトルは、「支払い済みのトランザクションを、さらに大きな重みを持ったトランザクションで上書きする」ことだ。理論上、大きな重みを持つトランザクションによって過去のトランザクション以前のトランザクションを承認し、ネットワークに「より重要なトランザクション」として認識されるように仕向けることで、前のトランザクションは無視され、この攻撃は成功するはずだ。タングルはこの問題の解決策として「正直なトランザクションチェーンの累積加重は、攻撃者の持つチェーンのそれよりも大きいだろう」と仮定した。その上で、マルコフ連鎖モンテカルロ(MCMA)アルゴリズムを用いてランダムウォーク(無作為に決定される運動)を試みるパーティクル(かけら)を設置し、ネットワークのランダムな二つのチップに対して、歩かせるようというアイデアを考案した。MCMAアルゴリズムによりランダムに選ばれたチップが承認の候補となり、この場合、小さなチェーンを持つはずの攻撃者よりも、正直で大きなチェーンを持つメインネットワークが選ばれる確率が高い。

 IoTにより無数のデバイスがインターネットにつながることはそれだけハッキングのリスクは増えるが、上記から、セキュリティー面での不安も解消できると考えられる。

2.4 IOTA財団

2.4.1 IOTA財団の取り組み

IOTA財団は、IOTAは、ドイツに本拠を置く法に則った非営利団体である。今後IOTAを駆使したテクノロジーを発展させていくために、データマーケットプレイスというIOTAの包括的かつ先駆的研究を協力企業との企研究を行っている。オープン・イノベーションイニシアチブとして35社以上の企業と協力して設立され、具体的な考え方についてリーダーシップを発揮することを目指している。この取り組みに参加している代表的企業には下記の企業がある。声明とともに記載をする。

Microsoft

 私たちは、IOTA財団と協力し提携し、新しいデータマーケットプレイスイニシアティブに関わることを誇りに思います。この次世代技術は、コネクテッドで、インテリジェントな世界を加速させます。そして、この技術は革新的な実世界のソリューション、アプリケーションを顧客に提供し、顧客の水先案内人となるブロックチェーンを超えていくでしょう。

Acceture

 今日、私たちはブロックチェーン分野の幅広いキーテクノロジープロバイダーと緊密に協力しており、IOTAデータマーケットプレイスプロジェクトに参加する機会を得てうれしいです。私たちは、実践的な経験を把握し、クライアントにIOTAの正しい理解と潜在的なビジネスへの影響を提供するために、IOTAの技術をより深く見ていきたいと考えています。

富士通

 ブロックチェーン、特にTangle(次世代ブロックチェーン)に基づくアプリケーションの可能性は非常に大きいです。重要なデータへのパブリックアクセスを可能とすることは、IoTにおいて最も緊急な課題の1つです。IOTA財団のデータマーケットプレイスは、この分野で最も革新的な取り組みの1つです。富士通は、世界最大のIT企業のひとつとして、ブロックチェーンとタングルベースの製品を開発し、顧客のエコシステムにスケーラブルなソリューションとしてそれらを積極的に吸収していきます。

2.4.2 検証事例

 香港の台北市がIOTA財団と提携を組みスマートシティ移行を目指す取り組みを行っている。 台湾の首都である台北市は、IOTA財団と提携し、『スマートシティ』を目指して多数のプロジェクトを進めていることを発表した。IOTA の革新的なブロックチェーンの技術を幅広い分野に応用する事で、スマートな社会を目指すとのこと。公的サービスや他の領域におけるデータの整合性と真正性の懸念を改善するために、多数のプロジェクトを通じて台北のニーズに合致する IOTA の技術を適用する可能性を探る。

最初のプロジェクトとなるのが、IOTAの技術である「TangleID」が組み込まれた『デジタル市民カード』。このデジタル市民カードは不正開封防止機能を備えたシステムとして動作するもので、個人情報の盗難防止などに役立つことになる。すでに進行中であると言われているプロジェクトは、Edimax、Realtek、Asus、Academia Sinica、LASS、Taipei Cityの共同作業で、気温、湿度、光、汚染を検出する、手のひらサイズの空気センサーを作成する『Airbox』である。これは既に市民の家庭や台北市の 150 の小学校に設置されている。Airboxは、エアデータをオンラインで収集して共有しているため、包括的な環境センサネットワークになっている。




第三章 Byteball

3.1 Byeteballとは

Byteball(バイトボール)とはロシアの開発者Tonych氏により考案され、2016年の12月にリリースされた。コンセプトはSmart payments made simple。通貨単位はGBYTE。 コンセンサスアルゴリズムにDAGを使用することで、トランザクションが高速で、30秒でネイティブ通貨であるbytesを送ることができる。他にはスマートコントラクトを兼ね揃えており、手数料が安いという特徴がある。手数料は15人のwitness(15個のノード)と呼ばれる承認者が承認報酬として受け取る。(取引データ1バイトあたり0.00004円)Byteballでは、DAGベースの設計がされている。従ってトランザクションは独自のブロックであり、単一のチェーンに接続する必要はない。

3.2 Byteballの持つ機能(スマートコントラクトを利用)

条件付き決済

Byteballは今までの仮想通貨ではできなかった、条件付きでの決済を可能にする。送金時に送る相手に条件を設定することで、万が一別の人に送ってしまった場合にも、送ったGBYTEが戻ってくる仕組みがあり、セキュリティロックをかけた送金ができるということになる。(条件付きの決済をするためには、Byteballの公式ウォレット同士でなければできないが、決済をする相手を間違えた際に有用。)

マルチサイン

Byteballは、スマートコントラクトを用いて、通貨・財産権・債務・株式といった譲渡可能な価値を持つ任意のデータを分散型のシステムで保存する事ができ、そこで改ざんを防ぐための手段としてマルチサインがある。個人の資産は一人の意思決定で問題なく財産の処分を行う事ができるが、複数の人の資産を取扱う場合、セキュリティーを高めるためにいくつかの署名が提供されていなければ決済することができないようにする仕組み。

スマートペイメント

P2P(個人間取引)を利用してチャット上で支払いができ、チャットbot、botストアなどの機能を持つ。公式サイトやアプリケーションでチャット機能を使って支払いをすることが可能となる。赤坂のサンタヌールというビールバーではGBYTEによる支払いが可能となっている。

Blackbytes

プライバシーの問題を解決するために提供されているのが、Blackbytes(ブラックバイト)であり、匿名で売買が可能となる。完全なプライバシーを望むときは、取引がパブリックデータベースに表示されない、現金のような追跡不可能な通貨であるBlackbyteで支払いを行う。

P2P保険

負のイベントが発生した場合に仲間から保険を購入して支払いを受け、利益のために保険を売ることが出来る。保険は、問題のイベントが発生した場合には保険者によって、または保険者によってロック解除されることができる。

3.3 Byeteballの課題

Byteballの課題としてはwitnessが現状ほぼすべて(12/15)運営側に集中しており、そのことにより中央集権型で進化が進んでいることが挙げられる。Witnessがいることで、ユーザ達は二重支払いを防ぐことができている。運営側もwitnessノードを移行してDAGが持つ非中央集権へと変えていきたいと考えている。そのためには更なるByteBallの認知と拡散が必要となっていく。これから非中央集権化に向けて解決しなければいけない課題としては、12のwitnessをどういった主体に譲渡していくのか、Witnessを運用する他の主体が多く生まれることである。




第4章 終わりに

ブロックチェーン以外に、ブロックチェーンを改良してできたイーサリアム等のテクノロジー以外にも、DAGとういう新しい技術ができていることをまず把握ができたことが良かった。 スケーラビリティの問題を改善することや、マイナーを必要としないことでマイクロペイメントの普及につながるかもしれないという観点からも、DAGがブロックチェーンに取って代わる可能性はあり得る。ただし、DAGには利点はあるものの、現状は非常に少数の関連プロジェクトしか動いていないのが状況である。引き続き両面の情報収集をしていこうと思う。 また、IoTについては、これからのテクノロジーの進化を大きく担う役割があると個人的には考える。ビッグデータやAIの更なる発展はIoTが多いに関わるはずだ。今回はIOTAがIoTにどのように関わっていくのかを知ることができたが、他にも、ブロックチェーンを用いたイーサリアムクラシックや、DAGを用いたセキュリティ問題解決に特化したIoT Chain(中国のIOTA)というテクノロジーもあるようなので、引き続き調査をしていく