見出し画像

テストネット上に時価総額1億6千万円のDAOを作った話

コミュニティをDAOで運営すると言われても、DAOとはいったいどういうものなのか、具体的にイメージができないのでよくわからないというのが本音のところ。

いろいろ調べていると、Aragonを使えば簡単にDAOが作れてしまうらしい。

しかもテストネット上にも作れるので、無料でお試しが可能というわけです。

テストネットにDAOを作る

DAOっていったい何ができるのか。作って確かめてみました。


DAOとはなにか

DAO(ダオ)とは、分散型自立組織(Decentralized Autonomous Organization)の略称で、ブロックチェーン技術を利用して、中央集権的な管理者や仲介者を必要とせずに、メンバー同士で自律的に協働する組織のこと。

DAOは、スマートコントラクト(ブロックチェーン上のプログラム)を使い、組織のルールや契約を自動化することによって、透明性や信頼性を高めます。
DAOのメンバーは、ガバナンストークン(DAOトークン)を所有することで組織の意思決定や利益分配に参加できます。
ガバナンストークンは株式会社でいう株に例えられます。DAO運営上の意思決定において、ガバナンストークンの保有者に投票の権利が与えられます。これは設定次第ですが、一般的には株と同じようにガバナンストークンの保有数に応じた投票権が与えられます。

DAOは、いわゆる法人や団体ではなく法的な主体ではないものの、この投票システムによって、インターネット上で自律的に活動することができるのです。

DAOの例としては、以下のようなものがあります。

  • MakerDAO: ステーブルコインと呼ばれる安定した価値を持つ仮想通貨を発行するDAOです。メンバーは、トークンを使ってステーブルコインの価格や供給量などを調整します。

  • Uniswap: 分散型取引所と呼ばれる仮想通貨の交換サービスを提供するDAOです。メンバーは、トークンを使って流動性プールと呼ばれる交換用の資金を提供し、その対価として手数料を受け取ります。

  • Aragon: DAOを作成や管理するためのプラットフォームを提供するDAOです。メンバーは、トークンを使ってプラットフォームの開発や運営に関する投票を行います。

DAOは、ブロックチェーン技術の発展に伴って、今後さまざまな分野で登場する可能性があるといわれています。DAOが発展することによって、中央集権的な権力や規制から自由になり、イノベーションや社会変革を促進すると考えている人も少なからずいるようです。

ただ、ガバナンストークンによる投票システムは、一見すると民主的に見えますが、株式会社の株のようにガバナンストークンの保有数に応じた投票権が与えられている以上、トークンをたくさん保有しているメンバーは、少ないトークンしか持っていないメンバーよりも大きな影響力を持つことになります。これは、一人一票制とは異なるシステムであり、民主的というよりは、一度勝てば勝ち続ける一人勝ち資本主義的な要素を含んでいます。

また、これはDAOに限った話ではありませんが、投票参加率の問題もあります。すべてのメンバーが常に全ての提案に対して投票するわけではなく、重要な決定が少数の参加者によって行われる可能性もあります。

他にも課題やリスクがあります。例えば、スマートコントラクトにバグや脆弱性がある場合、ハッキングや不正な操作が起こる可能性があります。
また、法的な地位や責任が不明確な場合、紛争や訴訟が発生する可能性もあります。
さらに、DAOのメンバーが多数派の意見に従わなければならない場合、少数派の声が無視されたり、分裂したりする可能性もあります。
DAOは、新しい組織形態として注目されていますが、まだまだ生まれたばかりで発展途上です。

以上を踏まえたうえで、試しにDAOを作ってみます。

前準備

Polygonはイーサリアムに比べて、ガス代(取引手数料)が大幅に低いので、DAOを作るならPolygonネットワーク上だろうなと考えていました。
でも、いくら安いとはいえ、お試しでいきなりガス代を取られてしまうのはちょっともったいない気がします。

今回は、とりあえずテストネットで試してみることにしました。

Mumbaiテストネット

Mumbaiテストネットとは、Polygon(旧Matic Network)のスケーラブルなイーサリアム互換のブロックチェーンプラットフォームのテストネットワークです。Mumbaiテストネットは、PolygonのメインネットワークであるMATICメインネットと同じ仕様を持ち、開発者やユーザーがPolygonの機能やサービスを試すことができます。

Mumbaiテストネットは、Polygonのメインネットワークへの移行を容易にするために作られたもので、開発者やユーザーは、MumbaiテストネットでPolygonの機能やサービスを十分に試してから、本番環境へ移行することができます。

Mumbaiテストネットは、基本的にPolygonメインネットワークと同じように使えます。例えば、MetamaskやTruffleなどのイーサリアム対応のウォレットや開発ツールを使って、Mumbaiテストネットに接続することができます。また、Polygon BridgeやQuickSwapなどのPolygon対応のサービスを使って、イーサリアムのテストネット(Gorliなど)からMumbaiテストネットへ資産を移動することもできます。さらに、Mumbaiテストネットでは、多くの有名なディファイやNFTプロジェクトが展開されており、実際に体験することも可能です。

Metamaskの準備

Metamaskのインストールや初期設定については様々なサイトで解説されていて、「Metamask インストール 初期設定」などの単語を入力して検索すればたくさん出てくるのでそちらを参照してください。

MetamaskにMumbaiテストネットを登録

Metamaskにウォレットの登録が終わっていればMumbaiテストネットをMetamaskに登録するのは簡単です。

Chainlistに移動します。

ここで行う作業は下記の通り

  1. Include Testnetsにチェックを入れて「Mumbai」を検索します。

  2. 右上の「Connect Wallet」をクリックしてMetamaskを接続します。

  3. Mumbaiの下にある「Add to Metamask」をクリック

手順1及び2
手順3

もしも、うまくいかなかった場合、Metamask上でネットワーク情報を手入力して追加することもできます。
これも「Metamask Mumbai 手動追加」あたりで検索すれば、たくさん参考になるサイトが出てきます。例えば、こちら

ちなみに筆者はChainlistを知らなかったので、手入力で追加しました。

テスト用MATICの入手

テストネットのMATICは暗号資産取引所などで購入するのではなく、テスト用MATICとして配布しているサイトから無料でもらいます。

インターネット上で検索すると、多くが https://faucet.polygon.technology/ から入手するよう書かれているのですが、エラーが出てうまくいきません。
Discordのアカウントをリンクするよう書かれているので、指示通りにしているつもりですが、どうもうまくいきませんでした。

結局筆者は、https://mumbaifaucet.com/ から入手しました。

アカウントを作ってログインすれば1日0.5MATIC、ログインしなければ1日0.2MATIC入手することが可能です。
とりあえず0.2MATICあればどうにかなるので、アカウントを持っていなければわざわざ作る必要はないと思います。

DAOの作成

Aragon

「DAOを作る」で検索するとだいたいAragonの説明に行き当たります。

ただ、多くの情報が少し古いようで、みなさんのブログ等に書かれているリンクからAragon Clientへ進もうとすると、Aragon Appに飛ばされます。
どうやらAragonは2022年4月に大規模アップデートを行ったようです。


ではもう、以前のAragon Clientは使えないのかというと、そういうわけでもなく、https://client.aragon.org/ から使えるようです。


DAOを作ってみる

大規模アップデートの理由がわからないので、いまいちしっくりこないのですが、とりあえず、今回はAragon Clientではなく、新しいAragon Appを使ってDAOを作ってみます。
https://app.aragon.org/  のページへ飛んだら、

  1. 右上の「Connect wallet」をクリックしてMetamaskを接続します。

  2. 「Create a DAO」と書かれた青いボタンをクリックします。

app.aragon.org

次のページで「Build your DAO」と書かれたボタンをクリックして先に進みます。

Mumbai を選択

ブロックチェーンはMumbaiを選択。
「Next」をクリックして次に進みます。

NameとDescriptionを入力

NameとDescriptionを適当に入力して次に進みます。

トークンの詳細を設定

Who can participate in governance?
1ウォレット1票の設定もできるようですが、今回は1トークン1票で投票できる設定にします。

Does your community already have an ERC-20 token to govern your DAO?
新しくトークンを作るので「No」にします。

Name
トークンの名前は「MyDAO Coin」にします。

Symbol
トークンのシンボルはMyDAO Coinに合わせて「MYDC」としました。

Distribute tokens
発行するトークンは1000000、すべて自分のウォレットに発行します。

Proposal creation
プロポーザルを作成できるのは、トークンを5MYDC以上持っているメンバーだけという設定にしました。

次に進みます。

投票ルールを設定

Support threshold
投票は過半数で可決されるよう50%に設定。これは投票者の50%で、棄権者はカウントされません。したがって全体の50%ではありません。

Minimum participation
何%が投票に参加すれば投票が成立するかを設定できます。デフォルトのまま15%にしました。

Minimum duration
投票期間の最小値を決めます。少なくとも1日以上にするよう注意書きが書かれています。投票が始まったことをメンバーに周知するのに最低でも1日ぐらいは待ちましょうということですね。デフォルトのまま1日とします。

Early execution
投票期間の終了前に結果がでた場合(今の設定だと投票者が最低参加数を越え、且つ賛成が過半数を超えた場合)に、提案内容を投票期間の終了を待たずに実行できるかどうかを設定できます。何でもかんでも1日待たないと決まらないのはキツイので「Yes」にします。

Vote change の項目は、Early executionをYesにした場合は関係ありません。

次に進みます。

確認画面

全ての項目の「These values are correct」にチェックを入れると、一番下の「Review details」がクリックできるようになります。

クリックして進みます。

コスト確認

ここで「Approve transaction」をクリックした後、Metamaskで承認すればDAOの完成です。

何をするにも投票が必要

ロゴマークを登録していなかったので、ロゴマークをBingAIに作ってもらいました。

BingAIが作ったMyMyDAOのロゴマーク

どれも捨てがたかったのですが、丸い形がちょうどよかったので右上のマークにしました。

このマークに決定

ただし、ロゴマークを設定するときも投票が必要です。

「Settings」から「Edit settings」を選んで、ロゴマークを追加するとプロポーザルを作って投票を行うよう促されるのでそれに従います。

投票結果が出るまでロゴの変更は保留されます。

はじめは全トークンを自分で持っているので、自分でプロポーザルを書いて自分で投票すれば変更できます。ただし、投票するたびに微小な額ですがガス代がかかります。

ロゴマーク更新の投票結果

Aragon Appで出来ること

Aragon Appで出来ることは、ざっくりいうと、

  • 投票

  • トークンの追加発行

  • 暗号資産の管理

以上の3つです。

ウォレットに送金するのと同じ手順で、暗号資産をDAOのアカウントに集めることができます。
一度集めた暗号資産は、支出の際必ず投票が必要になります。

とりあえずこれだけの機能があればDAOの形にはなりますが、例えばトークンホルダーに配当を出すような機能はないようです。

Aragon OSxの説明を読むと、DAOに新たな機能が欲しければプラグインとして追加できるような書きぶりではあるのですが、肝心のプラグインは自分で作れということのようで、ちょっとハードル高め。
DAOを作るところまでがあまりにも簡単だったので、ここからは少しブレーキがかかってしまいますね。

UniswapにMyDAO Coinを上場

さて、DAOの機能追加はあきらめて、MyDAO Coin(MYDC)を上場してみます。

Uniswapとは

Uniswapは、イーサリアム上で動作する分散型取引所(DEX)の一つです。

Uniswapでは、ユーザーは自由にトークンを交換したり、流動性プールに参加したり、手数料を受け取ったりできます。Uniswapは、従来の中央集権型取引所とは異なり、オーダーブックやマーケットメーカーを必要としません。代わりに、自動化された流動性プロトコル(AMM)を採用しています。

AMMが自動的に流動性プール内のトークンペアの供給と需要を分析し、各スワップに対して効率的なトークン価格を提供し、リアルタイムのトークン価値を決定します。

Uniswapの特徴の一つは、誰でも簡単に流動性プールに参加できることです。流動性プールとは、トークンペアの取引に必要な資金を集める場所です。例えば、ETHとDAIのペアの場合、流動性プールにはETHとDAIが同じ額ずつ入っています。流動性プールに参加すると、そのペアの取引にかかる手数料の一部を受け取ることができます。手数料は、流動性プールに提供した資金の割合に応じて分配されます。

MyDAO Coinを売り出す

先ほどDAOを作るときに一緒に作ったMyDAO Coin(MYDC)をUniswapの流動性プールに登録し、誰でも他の暗号資産と交換できるようにしてみます。

会社の株だと株式市場に上場しようとするといろいろ審査があって大変ですが、DAOのガバナンストークンは生成された直後にDEXで売りに出せます。

Uniswapも各種テストネットに対応しているので、Mumbaiテストネット上で実際に取引してみることが可能です。

準備:トークンのアドレスを調べる

DAOのSetting画面で、Tokenの項をクリックします。

Tokenの項をクリック

すると、Polygonscanの画面が開きます。
右上に表示されている数字とアルファベットの列がトークンのアドレスです。

トークンのアドレス

アドレスをメモ帳アプリなどにコピペするか、この画面を開いたままにしておきます。

流動性プールに登録

https://app.uniswap.org/pools へ移動してMetamaskを接続します。

右上の「接続」をクリック。Metamaskを接続

右上のアイコンからPolygon Mumbaiを選びます。

Polygon Mumbaiを選択

「新しいポジション」をクリック

「新しいポジション」をクリック

「トークン選択」をクリック

「トークン選択」をクリック

ここで、先ほど調べたトークンのアドレスを入力するとMyDAO Coinが出てきます。

MyDAO Coinが出てきた

これを選択すると、価格帯の設定、入金額の項目が入力できるようになります。
はじめは価格がわからないので初期値を入力するようメッセージが出ます。つまり、いくらで売り出すかは自分で決められるわけです。

価格帯の設定、入金額の項目などを入力

当初、1MYDCあたり1.5MATICで登録しました。

試しにMATICでMYDCを買ってみると、MYDCの価格が上がりました。現在は1MYDCあたり1.73MATICになっています。

現在価格:1.73009 MATIC / MYDC

さて、MATICはいまいくらなのでしょうか。
Metamask Portfolioで調べると、1MATICあたり95.1円になっています。(24時間のピークを見ると99.36円!!)

現在価格:95.1円 / MATIC

……ということは、1MYDCを円に換算すると、1.73 × 95.1 = 164.523(円) になります。
MyMyDAOは、MyDAO Coinを1,000,000MYDC発行しているので、なんと、時価総額は、164,523,000円です!

時価総額1億6千万円越えのDAOが出来ましたっ!!(笑)\(^o^)/
👏🙌👏🎊👏🙌👏

『おめでとう』

もちろん、1,000,000MYDC全部が流通しているわけではないですし、そもそも、自分で値札を貼っただけなので、100億円だろが2千兆円だろうが何の意味もありません。

失礼しました。m(__)m 🙇

まとめ

  • DAOを作るだけならAragon Appを使えば簡単

  • Aragon Appで作ったDAOに機能追加するのはまだ少し面倒

  • トークンを市場に流したいだけならUniswapなどのDEXを使えば簡単

とりあえず、DAOの外側はわりと簡単に作れそうですが、組織のルールや契約を自動化するには、そこそこのコーディングが必要っぽいですね。

もちろん、必ずしもスマートコントラクトに書き込んで自動化する必要はなく、既存のアプリを使ってオフチェーンで実行したり、手作業が入っていたりしてもDAOとしての運用は可能です。
ただ、冒頭のDAOの説明でも書きましたが、「スマートコントラクトを使い、組織のルールや契約を自動化することによって、透明性や信頼性を高める」というところがDAOの特長でもあるので、自動化できない部分が増えれば透明性や信頼性が低くなるということになります。
そうなると、わざわざDAOを作る意味が薄れてしまいますね。

既成のプラグインを組み合わせて独自の運用ルールを作成できるようになれば、グッとハードルが下がるのですが。

頂いたサポートは今後の記事作成のために活用させて頂きます。