dAppsアプリケーションとは?Web3開発者がdAppsアプリケー ションの概要を解説します😎🚀

dAppsアプリケーションとは?Web3開発者がdAppsアプリケー ションの概要を解説します😎🚀

2022.08.10
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!

最近 Web3 関連の開発相談が増えてきました。わたちたちは日々ブロックチェーンを研究しており、お客様への開発提供/コンサルティングをはじめ、自社のサービスへの導入を進めています。ブロックチェーンは取り組むほどに活用の幅が広く魅力的に感じています。

dApps(Decentralized Applications)は、ブロックチェーン上でスマートコントラクトを応用し開発される分散型アプリケーションのことで、単一のコンピューター上ではなくピアツーピア (P2P)のネットワーク上に存在し実行されるアプリケーションです。

ブロックチェーンは全ての参加者がサービス提供者から自律して取引履歴をコピーできる自律分散システムです。ピアツープア (P2P)はネットワーク上で同じ機能を持った端末同士が対等な関係で直接接続できるシステムです。

dApps(dappsとも表記される)はブロックチェーンや P2P の仕組みを使い、単一の組織の権限によって管理されずに様々な取引が可能です。また dApps ではスマートコントラクトの仕組みを使用することが多く、そのため多機能なイーサリアム (Ethereum) プラットフォームで構築されているケースが多いです。

この記事では dApps による次世代・新しい可能性について紹介したいと思います!

想定する読者

  • dApps の機能について知りたいヒト
  • dApps の開発に興味のあるヒト

はじめに

本記事では分散型アプリケーション (dApps)の理解を深め、長所や短所を紹介します。

キーポイント

  • dApps は中央集権型(単一のコンピューターで管理)ではなく、複数のコンピューターで構成されるブロックチェーンネットワークで実行される分散型アプリケーション
  • dApps は分散されているので、単一の組織の権限によってコントロール、干渉をされない
  • イーサリアムを使用すると効率的な開発が可能
  • dApps では、ユーザーのプライバシーが保護される・検閲されない
  • 規模拡大で取引にレイテンシーが発生する
  • デプロイ後はコード変更が難しい

分散型アプリケーション (dApps)について理解を深める

引用:https://www.softbank.jp/biz/blog/business/articles/201804/blockchain-basic/

Facebook、Uber や Twitter などの一般的なウェブアプリは一つの企業・組織が所有し、サービス提供者のシステム上で動作します。アプリのデータベース及びアプリ内の機能は、すべてサービス提供者によって管理され、これらは中央集権型と呼称され Web2 時代を牽引してきた仕組みと言えます。

対して DApps は、ブロックチェーンネットワークで実行されます。例えば、BitTorrent, Tor, Popcorn Time は P2P ネットワーク上に存在するコンピューターで実行されているアプリケーションのため、複数の参加者自身がコンテンツを利用したり、データベースにコンテンツを追加したりします。端的に言えばコンテンツの所有者はユーザー自身となり、ユーザー自身によってコンテンツへのオペレーションが可能となります。

暗号通貨の場合、dApps は一般的にイーサリアムやビットコイン等のオープンソースの分散型環境にあるブロックチェーンネットワークで実行されます。例えば、開発者は Twitter のようなアプリを作り、どのユーザーもブロックチェーン上にメッセージを投稿できるようにすれば、一度投稿したら、アプリの制作者を含め誰もメッセージを削除することができなくなります。つまり歴史が改ざんされないということです。この点、Git の仕組みに非常に類似していますね。ブロックチェーンはrebase のない、Git 運用を行うようなイメージかと思います。

dApps の長所と短所

dApps の長所

匿名取引が可能

dApps の長所はたくさんありますが、ユーザーのプライバシーを守る点が最大の魅力です。分散型アプリでは、ユーザーは個人情報を提供せずにアプリの機能を使うことができます。DApps は事前に定義されたルールに従って自動的に実行されるスマートコントラクトを使って、組織の上下構造や第三者に頼らずに、匿名の当事者同士で取引が可能です。

SNS での言論の自由が保証される

わたしたちは、dApps はこれからの SNS の基盤となる仕組みになるであろうと期待しています。分散型の SNS プラットフォームは単一の組織がブロックチェーン上の参加者の誰かのメッセージを消したり、メッセージを投稿できないようにブロックしたりできません。組織によって検閲されないので、ユーザーの言論の自由が守られます。

逆に言えばスパム的な行為を取り締まるのが難しくなる(利用者の合意が必要となる)ので注意が必要でしょう。よく Twitter や Youtube で BAN される人々がいますが、そういった人々が簡単には BAN されなくなります。

イーサリアムプラットフォーム

イーサリアムは新しい dApps を作る土台となる柔軟性のあるプラットフォームで、開発者が dApps の開発で必要となるブロックチェーンを介した様々な機能を用意しています。銀行や金融・ゲーム・SNS・オンラインショッピングなどの様々な業界で dApps を素早く展開できる環境を提供しています。

ただし、イーサリアムプラットフォームでは一回の取引に発生数する手数料(ガス代)が高くつことが気になるところです。ガス代については実現したい機能要件と取引量などを事前に試算し、把握しておく必要があります。

dApps の短所

取引のレイテンシー

アプリが多くの量の計算を行わなければいけないとき、ネットワークに過負荷がかかります。例えば取引が盛んな時間帯はネットーワークが混雑しているため、取引にレイテンシーを及ぼす事が多々あります。ビットコインで従来通りに送金処理を行ったことがある人は想像しやすいかもしれません。

変更の難しさ

一般的にサービスはデプロイ後に機能強化やバグやセキュリティーリスクを繰り返し修正する必要があると考えます。イーサリアムによるブロックチェーンに公開されたデータは変更することが難しいため、開発者はイーサリアムのアップデートを見越して、古いバージョンで取引された過去のトランザクションを、インデックス出来る仕組みを個別に開発しておく必要があります。

事前にブロックチェーンでどのような取引を行いたいのか、過去の取引のインデックス要件は発生するのか等を、要件定義することが必要不可欠ですね。

dApps の長所と短所のまとめ

長所

  • ユーザーの利用が検閲されない
  • ユーザーのプライバシーを守る
  • イーサリアムを使用すれば開発効率が良い

短所

  • 規模拡大による取引のレイテンシー
  • リリース後の変更が難しい

おさらい

イーサリアム dApps とは?

引用:https://ethereum.org/

イーサリアム dApps とは、イーサリアムのプラットフォーム上で実行・開発された分散的アプリケーションです。イーサリアム dApps はスマートコントラクトを使い、事前に定義されたルールに従って自動的に実行されるので、契約を簡単・効率的にします。イーサリアムネットワークに構築され、イーサリアム dApps ではデータストレージにプラットフォームのブロックチェーンが使われています。

中央集権型と分散型のアプリの違いは?

中央集権型のアプリは一つの会社が所有しています。中央集権型のアプリのソフトウェアは会社が管理する1つまたは複数のサーバー上にあります。ユーザーはアプリのコピーをダウンロードして、サーバーからデータを送受信することでアプリを操作します。

分散型のアプリ(dApps か dapp と呼ばれる)はコンピューターのブロックチェーンやピアツーピアのネットワーク上で動作します。単一の組織に頼ることなく、一人ひとりが直接互いに取引を行うことができます。dApp のユーザーはプログラムのソースコードをダウンロードし、開発者に暗号通貨で使用料を支払います。ソースコードはスマートコントラクトの仕組みが採用されており、ユーザーは個人情報を公開せず取引を完了できます。

中央集権型と分散型のアプリの例は?

中央集権型のアプリで有名な例は、Twitter, Facebook, Instagram、Netflix などがあります。銀行やほかの金融機関も中央集権型のアプリを使い、顧客が自分の口座にオンラインでアクセスできるようにしています。

Twitter の代わりとなる Peepeth という SNS は分散型アプリの例の一つです。Cryptokitties も dApps のゲームでユーザーはバーチャルの猫を買ったり売ったりできます。MakerDAO は Dai という分散型ステーブルコインをサポートしている分散型のクレジットサービスで、ユーザーが加担付き債務ポジション(CDP)を作ることができます。企業・政府・国家など単一の組織に支配されないアセットを管理できます。

まとめ

最近では dApps アプリケーションの開発がますます盛んになってきているので、まずは本記事で概要を掴んでみてください。日本からも世界に挑戦するブロックチェーンソリューションが生まれると嬉しいですね。

dAppsアプリケーション・ブロックチェーンの開発はお気軽にお問い合わせください。