非中央集権型アプリケーション=DAppとは何か?

非中央集権型アプリケーション=DAppとは何か?

DApp(Decentralized Apprication)とは、全てが非中央集権化されたアプリケーションである。

対義語はCApp(Centralized Apprication)、中央集権化されたアプリケーション

ちなみにこの記事は、現行開発されているDappに関する具体的なサービスの紹介ではなく
概念的な理解を目的としている。

全てが非中央集権化されたアプリケーションとはどういうものか?

非中央集権化できるアプリケーションの要素には次のようなものがある。

・バックエンドソフトウェアリング
・フロントエンドソフトウェアリング
・データストレージ
・メッセージ通信
・名前解決

これらの要素は、中央集権的にも、非中央集権的にもなりえる。
例えば

バックエンドとストレージは、プライベートサーバーと独自のデータベース上で管理できる。
フロントエンドは中央集権的に管理されるサーバー上で実行されるWebアプリケーションとしてあるいはデバイス上で実行されるモバイルアプリとして開発できるが、スマートコントラクトとP2Pストレージを使用することもできる。

Dappとして作成することのメリットは以下の通り

・耐久性
・透明性
・検閲耐性

上記の知見はすべて次の参考文献から得たものである。

参考文献:マスタリング・イーサリアム~スマートコントラクトとDAppの構築

未来のアプリケーションとなるだろうか?

DAppはブロックチェーンを利用して作られる。
今後普及することが予想される、次世代の分散型アプリケーションだ。
しかしながら、どの程度普及するかははっきり言ってわからない。

現在、我々は特定の組織、企業や政府などが管理するアプリケーション、すなわちCappを使用しているということは理解すべきだろう。
Facebookやinstagram、twitter、Gmail、LINEなど数多くのアプリケーションがあるが、例外なくこれらのサービスはCapp(中央集権化されたアプリケーション)と定義できる。

企業がすべての情報を管理し、特定の利用者がサービスを使用することの可否を決定している。
たとえば2021年1月にトランプ大統領がtwitter社の意思決定によって、twitterのアカウントを停止された。(ここでは、この問題の是非を語りたいわけではない。)
もしDapp型のtwitterらしきものがあれば、こうした特定の権力主体による意思決定は簡単には起こりえなくなるだろう。

理論上は、分散型の投票システムによってすべてが決まっていくはずだ。
DAppは、権力分散した、より民主的なアプリケーションとなるだろう。

ブロックチェーンとスマートコントラクト

Dappがどのように作られるか理解するのは容易ではない。
基本用語は膨大にあるが、現状においてはイーサリアムに関して学習することは特に重要である。

新規の学習者にとってブロックチェーン、トランザクション、スマートコントラクトなど理解することは数多くあるが、当サイトでも今後詳述していく。

ブロックチェーン:ブロックと呼ばれるデータの集合体をクサリのようにつなげたもの(ビットコイン、イーサリアムなど複数存在している)

トランザクション:ブロックチェーン間で送受信される取引に関するデータ

スマートコントラクト:トランザクションがブロックチェーンに送信されることで電子契約を結ぶのだが、これが自動的に行われること。この用語自体は90年代頃から定義があったが2009年のビットコイン登場とともにこのような概念として使われている。