分散型アプリケーション
分散型アプリケーション(Decentralized application = DApp[1]、dApp[2]、Dappまたはdapp)は、ブロックチェーンなど分散型コンピューティングの仕組みを利用して実行されるアプリケーションの総称。
DAppは、イーサリアムブロックチェーン[3]などの分散型台帳テクノロジー(DLT)によって普及している。また、DAppはその定義上スマート・コントラクトや、DeFi(分散型金融)とも密接な関係のある言葉であり、しばしば同義として扱われることもある。
特徴
DAppは、バックエンドプログラムが中央集権型のサーバーで実行される一般的なウェブアプリケーションとは違い、分散化されたピアツーピアネットワーク上(Ethereumなど)でバックエンドプログラムを実行することが特徴である。また、バックエンドへの呼び出しが可能な任意の言語で書かれたフロントエンドプログラムとユーザーインターフェースを持つことができ、さらにフロントエンドにおいても、SwarmやIPFSなどの分散型ストレージでホストすることができる。DAppはトークンを提供することで協力者にインセンティブ(動機づけ)を与えており、コミュニティ内で合意された特定のプロトコルにより運用される仕組みとなっている。これによりネットワーク健全性の維持を行っている。
批判・課題
DAppはブロックチェーンを利用しているため、仮想通貨と同様にそのトランザクション量が増加することでスケーラビリティの問題が発生することがある[4][5]。また同様に、トランザクションのリソースの逼迫による手数料等の上昇リスクや、同じブロックチェーンを使用している場合に当該のDAppと無関係のアプリケーションのトランザクション負荷(および手数料)にも影響する可能性がある。また、利用者がブロックチェーンの仕組みを理解していないと利用しづらい現状や、トークン実用性と価値の乖離の問題などが唱えられている。
適用例
DAppは様々なアプリケーションに適用されており、DeFi(分散型金融)、スマートコントラクト、ゲーム(ファンジブル・非代替性トークンを利用したゲーム内アイテムの取引など)、オンラインカジノなどへの使用が広まっている。