前回の「ADK」記事で「DAG」について少し触れました。
ほんの少しね。
今回は、「DAG」という技術について紹介していきます。
これに関しては、かなり自信がないので、間違ってたらごめんなさい。
DAGとは?
DAGとは「Directed acyclic graph」の略称で、「有向非巡回グラフ」とも言います。
うまい説明の仕方が見つからないので、Wikipediaを引用させていただきます。
グラフ理論における閉路のない有向グラフの事。有向グラフは頂点と有向辺(方向を示す矢印付きの辺)からなり、辺は頂点同士をつなぐが、ある頂点 v から出発し、辺をたどり、頂点 v に戻ってこないのが有向非巡回グラフである。
要するに、1つのブロックAがあった時に、そのブロックAから複数の有向辺が出ており、ブロックBとブロックCに繋がっていくという構造のことです。
わかりやすい図もWikipediaから借りてきました。
見てわかる通り1つのブロックから複数の矢印が出ていますよね。
その結果として、図とは異なりますが、線とブロックがどんどん増殖していくことが思い浮かべられるでしょうか?
DAGとブロックチェーンの違い
ブロックチェーンは、1本の線でブロックが繋がっているもののことです。
すなわち、トランザクションの処理に限りがあります。
それに反してDAGは、複数の線で構成され、ブロックを複数形成することができるため、スケーラビリティが拡張され、トランザクションをより多く処理できます。
DAGと似たような構造に「Byteball」や「IOTA」があるのですが、
それぞれの通貨をまだ扱っていないので、扱ったときに同時に紹介します。
DAGのメリット
スケーリングの効率化以外のメリットを挙げるなら、
マイニングする必要がなくなったので、
取引手数料が必要なくなる可能性があるということですね。
DAGのデメリット
割と新しい技術なので、未だに発見されてない問題はいろいろありそうです。
一番懸念される点は、セキュリティ面。
トランザクションが増えることで、不正箇所が散らばる+増えるので、
ちゃんと不正対策をしないと、システムとして脆弱なものになる恐れがある。
逆もまた然り。
まとめ
「DAG」の説明は以上です。
これで説明になっているか怪しいですけど、30分しっかり勉強したので、
大体のことは、間違ってないと思います。
参考文献はこちらです。
内容に不備があれば、こちらで補填してください。
コメント