dApps(分散型アプリケーション)とは何か?

dApps(分散型アプリケーション)とは

このブログを立ち上げてからというもの暗号通貨の事を調べたりする事が多くなってきましたが、数々と出てくる横文字たちに悩まされて来ました。そして、今日も見つけてしまいました!dApps と言う言葉・・皆さんも聞いた事はあるのでは無いでしょうか?

dAppsとは、decentralized applications =日本語では分散型アプリケーションっと言うそうです。では、分散型アプリケーションとはいったい何なんでしょうか?

よく考えて見ると、私達が使っている今のゲームの世界って中央集権的だと思いませんか?アプリを提供する会社があって、アプリを開発する個人や企業があってユーザーはそのゲームを使って遊びます。でも、アナタの作ったゲームはダメだとか開発した企業が潰れてしまうとゲームってそこで終わっちゃうんですよね・・もし、ゲームで課金しまくっていきなりゲームができなくなってしまったら、ショックじゃ無いですか?自分がそんな目にあったらめちゃくちゃショックです(笑)

そして、仮にサーバーが落ちてゲームが使えなくなったりする事だって考えられますし、もちろん、ゲームを何気なくやっているとは思いますが、個人情報が入っているわけですし、そんなの使えなくなったら終わりじゃん!ってなちゃうわけですよ・・これって全部よくよく考えて見ると中央集権的に見えませんか?これが管理者なしで開発されたらどうなるのでしょうか?

そこで、生まれたのが dAppsです!

dAppsは、ブロックチェーンを使って非中央集権的にアプリやゲームを提供して行きましょう!というのがdecentralized applications=分散型アプリケーション(別名:自律分散型アプリケーション)とも言います。つまり、中央管理者を持たずしてアプリケーションを提供して行きましょうと言う事です。

そして、には定義があり、その定期に当てはまるモノを見つけました。
dAppsの定義とは、

1.アプリケーションは完全にオープンソースである必要があり、自律的に動作する必要があり、トークンの大部分を制御するエンティティがない必要があります。アプリケーションは、提案された改善と市場のフィードバックに応じてプロトコルを適応させることができますが、すべての変更はユーザーのコンセンサスによって決定する必要があります。

2.アプリケーションのデータと操作の記録は、障害の中心点を回避するために、パブリックな分散型ブロックチェーンに暗号で保存する必要があります。

3.アプリケーションは、アプリケーションへのアクセスに必要な暗号化トークン(ビットコインまたはそのシステムにネイティブなトークン)を使用する必要があり、(鉱夫/農民)からの価値の貢献はアプリケーションのトークンで報われる必要があります。

4.アプリケーションは、ノードがアプリケーションに貢献している価値の証明として機能する標準の暗号化アルゴリズムに従ってトークンを生成する必要があります(ビットコインはプルーフオブワークアルゴリズムを使用します)。

【引用元】The General Theory of Decentralized Applications, Dapps

上記の様な事が組み合わさったモノの事をdAppsと呼ぶそうです。

dAppsの特徴は、

  1. ブロックチェーンが使用されていること
  2. 中央集権的な管理者を返さず、非中央集権的(管理者を持たないこと)である事
  3. 主にスマートコントラクトを活用したものが多い、スマートコントラクトとは契約条件の締結や履行がプログラムによって自動で実行される仕組みの事です。
  4. アプリのアップデートにはユーザーが多様な利害関係を持ち、意見を一致させる必要がある(合意形成が必要となる。)

そして、dAppsの概念はビットコインにあるとされています。

dAppsでは、誰がどのくらい金額を所有しているか正確に記録します。そして、正確な送付先を書き込む事でお金を送りたい相手に正しく送金するサービスを提供します。サービスはアプリ内トークンの受け渡しによって自動的に行われます。

アプリ内利用者は送金手数料を支払い、マイナー(採掘者)は記録作業に参加し対価として手数料を受け取ります。そして、ユーザー同士でアプリの改善や利便性を高めるには合意形成が必要に成ります。この様な仕組みは全てブロックチェーン上で行われ、非中央集権的である為安全性は確保されます。

そして、スマートコントラクトを実装する事により契約条件の締結や履行までをスムーズに行いユーザーの利便性・恒常性を高めたモノがdAppsといえます。

dAppsについては今後も、追記して行きます。