DAG通貨について徹底解説!IOTAやADKなどについてわかりやすく紹介!
Crypto Times 編集部
こんにちは、hayata(@hayata_crypto)です。
今回は、DAG(Directed Acyclic Graph)について解説します。
DAGという技術は、IOTA・byteball(GBYTE)・NANO(旧xrb)・Aidos kuneen(ADK)で採用されています。どれも一度は聞いたことがあるような、有名なものばかりですね。
どれも発行日より大幅に価格を上げており、DAGを採用しているだけでかなり高い注目を得られています。また、Travelflex(TRF)もDAG通貨として注目を浴びましたが、あくまで”採用する予定”となっており現段階では一般的なブロックチェーン方式の通貨(POW)となっています。
2018年2月ごろには、TRUSTNOTE(TTT)という新DAG通貨のAirdropもありましたね。信用できるか保証はしません。
このように、大変注目度の高いDAGについて解説していきます。
この記事の3つのポイント!
- スケーラビリティの問題を解決できる可能性を秘めている
- DAGは通貨ごとに少しづつ違う仕組みである
- DAG特有の課題も確認されている
参考:ブロックチェーンに変わる新技術?DAGとは、IOTA(IoT特化型暗号通貨)の技術の裏側、NANOのWHITEPAPER、RaiBlocks(XRB)とはなにか。
目次
DAGの仕組みと、ブロックチェーンとの違い
DAGとは、有向非巡回グラフと呼ばれるように、向きがあって巡回しないように取引が複数のチェーンに繋がれている形で取引を記録していきます。
ビットコインなどの仮想通貨では、ブロックチェーンという技術が採用されています。
基本的なDAGとブロックチェーンの大きな違いは、一つの一つの取引をまとめて記録するかそれぞれ記録するかという違いがあります。
以下のようなイメージです。
ブロックチェーンでは、ブロックをチェーンで一本につなぎ一方向につなぎ足すことによって、そのブロックにある複数の取引データを記録します。
それに対し、DAGでは、1つの取引データを一方向に複数つなぐことによって取引を記録しています。
DAGでは、ブロック内に取引データを収容する必要がないので、ブロック生成時間とブロックサイズが原因で送金が遅くなるという問題が改善されます。
DAGではすべての通貨があらかじめ生産されていますので、マイニングという概念そのものがありません。
通貨ごとのDAGの違い
ここからは、通貨ごとにDAGの仕組みが違うことを解説します。
IOTAのDAGとは
IOTAはIoT機器間などにおけるマイクロペイメント(少量少額送金)の為に作られた通貨です。
IOTAでは、DAG構造はtangleと呼ばれています。そして、それぞれのトランザクションは二つ前のトランザクションを参照するように生成されています。
そして、基本的に取引手数料が無料ということも特徴の一つです。
利用者は、自分の取引をするためにトランザクションを生成するのですが、この時に過去のトランザクション承認することが必要になります。この承認時に、ビットコインなどのマイニングのようにPOW(proof of work)を行うことが求められます。
送金者自身で、自身の送金を完了するためにPOWを行うので送金手数料がかからないのです。
また、一般的に仮想通貨では取引手数料がかかりますが、かかる理由の1つとしてスパム攻撃への対策が挙げられています。IOTAでは、二つ前のトランザクションを承認することが求められるので、攻撃する度にPOWを行うことになるので、攻撃を受けるほどより承認速度が上がります。
そして、IOTA財団は現在、Coordinatorという特別なノードを用いて、既に承認されているトランザクションをチェックし取引を整備することで、tangleのネットワークを大規模攻撃から守っています。これにより、IOTAは完全には分散化出来ていません。とはいえ、将来的にはCoordinatorは役目を終え、完全な分散化が達成されると考えられています。
また、量子コンピューター耐性のある署名方式が採用されています。将来を見据えて設計された通貨であると考えておけばいいと思います。
しかし、IOTAは二重支払いやトランザクション分岐の問題があると言われています。
少額送金や署名や二重支払い問題については、過去記事で簡潔に解説していますのでご覧ください。
○IOTAの要点
取引手数料がかからない
スケーラビリティの問題の解決
量子コンピューター耐性がある
byteball のDAGとは
byteball は匿名送金が実装されており、スマートコントラクトやトークン発行が出来るようになるとされています。
DAGというくくりではIOTAと同じにされていますが、仕組みをたどると違いが見えてきます。
IOTAとの違いは、トランザクション承認にPOWを使わず代わりにWitnessを採用していることです。Witnessは特別なノード(ここでは、トランザクションからトランザクションへと繋ぎメインチェーンを生成する役割)だと理解してください。
このWitnessという12のノードがメインチェーンを作り出し、トランザクションに重みづけすることによって二重支払い問題が防がれています。また、Witnessしかチェーンの改変や再構成が出来ません。
ただし、Witnessは性善説によって運営されており、悪意のあるWitnessによってチェーンが改変されてしまう可能性はゼロではありません。とはいえ、Witnessは12あるので、一部のWitnessが悪意をもったとしても残りのWitnessで対応できると考えられています。
利用者は投票でWitnessを選ぶので、票が得られなければWitnessから外すことも可能です。
また、Witnessにチェーンの管理を任せているので、手数料は発生しています。1バイトあたり、1byteトークンが必要になります。
そして、byteball では「条件支払い」が可能です。例えば、公式ウォレット同士でご送金してしまった時に送金を取り消せるということです。セルフGOXが起こりづらくなるわけです。
○byteball の要点
Witnessに管理を任せており、Witness以外はチェーンの改変が出来ない
超低額での送金が可能
条件支払いで誤送金が取り消せる場合もある
NANO(旧:RaiBlocks)のDAGとは
NANOは2018年1月31日にRaiblocksからリブランドされました。取引手数料がかからないことと、スケーラビリティを売りにしています。
Nanoでは各アカウントが自身に関連するトランザクションをまとめて、ブロックチェーン形式で取引履歴を管理します。
イメージとしては、各アカウントごとにブロックチェーンを作成し、各自のトランザクションを各自のブロックに収納しチェーンを構成します。
NANOのホワイトペーパーでは以下のような図で説明されています。
図の解説をします。まず、A,B,Cの各アカウントが独自のブロックチェーンを生成します。そして、送金をする際には自分のブロックと他のアカウントのブロックにトランザクションを載せることによって送金を完了します。
これによって、自身が正しく取引データを保存していれば二重支払い問題は起こらないと言われています。
ただし、実際には不正を働こうとする人もいます。そのような不正な送金が発生した時の為に、NANOではネットワーク参加者の投票によって正しい取引履歴が決定されています。
投票という形式はLISKなどに代表されるDPOSと同じだと考えればよいです。とはいえ、DAGなので採掘(鋳造)は出来ないので報酬は出ません。
これにより、IOTAやbyteball よりもトラストレスで分散型のネットワークが構築できると考えられています。
○NANOの要点
取引手数料とスケーラビリティ問題がない
それぞれのアカウントごとにブロックチェーンを形成する
ネットワーク参加者による投票によって正しい取引記録が選ばれる
終わりに
それぞれの通貨の仕組みが混同してしまっている方の為にそれぞれを改めて比較します。
以下、ホワイトペーパーからの引用です。ここまで読んできた方なら理解できると思います。
Byteballは、正直で評判が良く、ユーザーが信頼できる「証人」で構成された「メインチェーン」に頼ってコンセンサスを達成しています。
IOTAは、積み重ねられた取引の累積的な確証を担保にしたコンセンサスアルゴリズム(tangle)です。
RaiBlocksは、報酬のないDPOSによりコンセンサス(合意)を達成する。
また、それぞれの用途についても、
- IOTAは、IoT機器間などにおけるマイクロペイメント(少量少額送金)
- byteball は、通貨や債務、株式などの譲渡可能か価値を示すデータの改ざんを無くして収納する
- NANOは、信頼性の高い迅速なP2P(peer to peer)支払いと裁定取引のための迅速な取引転送
であり、それぞれの役割は異なります。
文章を締めます。
DAGは、ブロックチェーンに続く新しい技術です。
メリットは手数料が安価であることやスケーラビリティの問題が無いことやブロック生成時間を待たずに送金できることなどが挙げられます。
しかし、取引データが重く、ブロックチェーンと比べて歴史が浅いため、セキュリティ面での不安が比較的大きいという現状があります。
また、一言にDAGといってもその形態はさまざまであることから、DAGが採用されるとしてもその中で淘汰されていき、トラストレスで分散型で量子コンピューター耐性を実装できる形のDAGが生き残っていくと思います。もちろん、通貨の用途も大切ですよ。
今回はここまでとします、広く浅く解説したので興味のあるかたはご自身で調べてみてくださいね。