DAO(自律分散型組織)の設計を侮るな
リサーチャーの伊東です。
本稿では、2021年の秋頃から特によく聞くようになったDAO(Decentralized Autonomous Organization; 自律分散型組織)について、その難しさを設計の観点から指摘します。
DAOという言葉の定義は未だ曖昧ですが、筆者が知る限り Buterin et al. (2014) で初登場しており、そこでは「Ethereumを使えばこんなことができるかも」の一例としてこう書かれています (*1):
これだけ読むと「ふーん、まあそんなもんか」と思われるでしょうが、背後にある技術史 —— ① Bitcoinが (素性がわからない不特定多数の間で) 取引記録の正しさを自律分散的に決める仕組みを示した ② EthereumがBitcoinの送金機能をprogrammableにすることでアプリケーションの開発を可能にした —— を踏まえるとその意味が見えてきます。すなわちDAOは(何か?ではなく何がしたいのか?で捉えるならば)「自律分散的に決める」というBitcoinの新奇性を拡張して、取引記録のみならず組織の運営に関する様々な内容を扱えるようにすることを目指すコンセプトなのです (*2)。
果たしてそんなことは実現可能なのでしょうか?アプリケーションが集権的に管理・運営されているとせっかくの新奇性が損なわれてしまうため、これはEthereumの意義と可能性に関わる非常に本質的な問いです。したがって筆者は、Ethereum上でアプリケーション開発を行う全ての主体(もちろんスタートバーン株式会社を含む)にとって、DAOは追求する価値のあるコンセプトだと考えています。
DAOとは「決め方」の設計である
本稿の執筆時点では(自称も含めて)多種多様なDAOが乱立しています (*3)が、少なくとも主要なものは全て「自律分散的に決める」機能と不可分になっています。
たとえばDAOを謳った最初のアプリケーションである The DAO (Jentzsch, 2016) は、自律分散型の投資ファンドを目指すものでした (*4)。その大枠はシンプルで ① 誰でも任意量のETHをThe DAO宛に送金できる ② The DAOは受け取ったETHの量に応じてトークンを返送する ③ トークンの保有者はThe DAOに溜まったETHの運用益を受け取ることができるというものです。ファンド・マネージャーは不在であるため、ここでは溜まったETHの投資先を(各々の価値観が異なるであろう)トークン保有者たち皆でどうにかして決める必要があります。
翻って2021年の公開以降高く評価されている nounsDAO は、自律分散型のNFTコミュニティです。こちらの大枠は ① nounsDAOは毎日1つずつNFTを新規生成する ② nounsDAOは生成されたNFTを誰でも入札可能なETH払いのオークションで販売する ③ NFTの保有者はnounsDAOに溜まったETHをNFTを盛り上げるため(e.g., nounsのNFTがプリントされたTシャツを作る, 開発者に渡す)に使うことができる というものです。マーケティング担当者は不在であるため (*5)、ここでも溜まったETHの用途を(各々の価値観が異なるであろう)NFT保有者たち皆でどうにかして決める必要があります。
こうした実情は、DAOの設計がまさに「決め方」の設計である旨を示唆しています。
「決め方」の設計は難しい
ところがこの「決め方」は、実は設計が非常に難しいのです。
いや普通に多数決の投票にすれば良いじゃん、と思うかもしれませんがそうもいきません。なぜならDAOとして自律分散的な環境を想定した途端に、これまであまり議論されてこなかった「シビル攻撃」と「ただ乗り」という2つの問題が立ちはだかるからです (*6) 。
シビル攻撃とは、1人が複数のアカウントを作って他人であるかのように振る舞う攻撃全般を指します (*7)。100人で決めていると思いきや、実は100アカウントを管理する1人が決めていたという状態は分散的とは言えないため、これはDAOにとって重要な問題です。選挙制度のように集権的な存在(e.g., 選挙管理委員会, 政府)に頼って一人一票を担保するわけにもいかないので、分散的に解決する何かしらの方法を考えなければなりません (*8)。
次にただ乗りとは、利用者がシステムに貢献することなく内部の資源を使い続けてしまう状態を指します (*9)。結局ほとんどの利用者が決めるプロセスに参加してくれないという状態は自律的とは言えないため、これもDAOにとって重要な問題です。再び選挙の例で考えるならば、ただ乗りは低い投票率の問題に通じるでしょう。またこの問題は「決めるプロセスに参加すれば定額の報酬を与える」といった形で対策しようものなら、今度は報酬目当てのノイズプレイヤー(e.g., ランダムに回答するbot)を呼び込んでしまうのが難しいところです (*10)。
このように、DAOにおける「決め方」は、自律分散性を目指すからこそ生じるシビル攻撃とただ乗りの問題によって、突然設計が難しくなるのです。
正解はまだ見つかっていない
2つの問題を同時に解決する実用的な正解は、残念ながらまだ見つかっていません。
シビル攻撃単体で見れば、The DAOとnounsDAOはどちらも(fungibleかnon-fungibleかという違いこそあれ)トークンを用いて投票を行う形で対策ができています。つまり1アカウント=1票ではなく1トークン=1票扱いにすることで、大量のアカウントを作成しても決めるプロセスへの影響力を不変にしているのです(金持ちほど影響力を持つ構造になりますが)。
では、ただ乗りについてはどうでしょうか?
The DAOでは、トークンを用いた投票に以下のような構造を持つtoken stakingと呼ばれる仕組みが採用されています:
アカウントは各選択肢に対して任意量のトークンを賭けることができる
一定期間を過ぎた後にもっとも多くのトークンを集めた選択肢を合意結果とする
合意結果以外の選択肢に賭けられたトークンは没収され、合意結果の選択肢にトークンを賭けていたアカウントの間で分配される (*11)
つまり ① 合意結果に投票していれば報酬のトークンが得られるので参加のインセンティブになる ② 適当に投票すると自分のトークンを失う可能性が高いのでノイズプレイヤーの参入も防げることを期待しているわけです。
一見上手くいきそうですが、この仕組みには問題点があります。まず、もっとも多くのトークンを集めた選択肢を報酬の対象にすると、投票者は皆が選びそうな選択肢を予想してそこにトークンを賭けるようになります(いわゆる美人投票)。これでは投票者本人の信念が引き出せないため「決め方」としては致命的です。また、賭けたトークンを失う可能性もある仕組みがただ乗り問題を解決するかも怪しいところです。実際シンプルなtoken stakingにおいては報酬の期待値は0となり、gas代も考慮するとマイナスになることが予想されます。
そしてnounsDAOでは、ただ乗り問題への対策は特に行われておらず、トークンを用いた投票は経済的な動機付けというよりも持続性が不明なコミュニティの熱量・空気感によって駆動している現状です。低い投票率を避けるために委任投票(i.e., NFTを持つアドレスが投票権を別のアドレスに割り当てる) が可能となっていますが、委任された人への報酬も存在しません (*12)。
このように、シビル攻撃とただ乗りを同時に解決しようとすると、結局うまくいかなかったり別の問題が発生してしまう現状なのです (*13)。
おわりに
本稿では、DAOの難しさについて設計の観点から指摘しました。
より具体的には、DAOと不可分な「決め方」の設計において、自律分散性を担保しつつ「シビル攻撃」と「ただ乗り」を解決することが如何に難しいかを論じました。
一方で、冒頭で述べたとおりDAOは追求する価値のあるコンセプトです。今回はできない理由ばかりを並べてしまいましたが、「諦めろ」ではなく「侮るな」が本稿の主旨である点は最後にしっかり強調しておきたいと思います。
実際に筆者はピア予測法と呼ばれる分野を用いたDAOの設計について研究していますし、スタートバーン株式会社が構築する「Startrail」の機能をどこまで、どのようにDAO化できるのかについて検討を続けています。
こうした「ではどうすれば良いのか?」という大事な部分についても、今後記事を発表していくつもりです。ご期待ください!
以上
Buterin, V. (2013). Bootstrapping a decentralized autonomous corporation: part I. Bitcoin Magazine, 19.
Buterin, V. (2014). A next-generation smart contract and decentralized application platform. white paper, 3(37), 2-1.
Douceur, J. R. (2002). The sybil attack, In International workshop on peer-to-peer systems. Springer.
Jentzsch, C. (2016). Decentralized autonomous organization to automate governance. White paper, November.
Ramaswamy, L., & Liu, L. (2003). Free riding: A new challenge to peer-to-peer file sharing systems, In 36th annual hawaii international conference on system sciences, 2003. proceedings of the. IEEE.
脚注
(*1) 厳密には Buterin (2013) が先んじて、DACという形でDAOについて言及しています。
また Buterin et al. (2014) では、DAOを2種類のサブコンテンツに分類しています:
(*2) したがってBitcoinやEthereumをDAOとする場合もあります。
(*3) 詳細については、たとえばこちらの記事をご参照ください。
(*4) 過去形にしているのは、結局その後にThe DAOがクローズしたためです。コードの不備を突かれ溜めていたETHを流失してしまったことが原因であり、またこの事件が後のEthereum分裂にも繋がりました。
(*5) 一方で、DAOの参加者は全員同じ役割を持つとは限りません。たとえばThe DAOにはcurator、nounsDAOにはnoundersと呼ばれる特別な権限を持つ主体が存在しています。このような状態を果たしてDAOと呼んで良いのかについては、意見が様々です。筆者としては誰でもその役割を担える (e.g., Bitcoinのマイニングノード) ならばDAOとみなしても差し支えないと考えています。
(*6)「決め方」については、好みが異なる人たちの意見をどのようなルールで集約することが望ましいのか?という主題で、これまで主に投票理論や社会選択理論、ゲーム理論などの分野で研究されてきました。
(*7) "the forging of multiple identities" (Douceur, 2002, p.251)。したがって1人が複数のアカウントを作成出来るDiscordやSlackなどは、ただそれを使っているだけではDAOとは言えません。
(*8) ちなみに取引記録に関して自律分散的に決めることを実現したBitcoinやEthereumでは、計算資源を多く持つ者ほど決めるプロセスへの影響力が高くなる (よってアカウントを何個作ろうが影響力は変わらない) というルールでシビル攻撃への対策をしています。
(*9) "an individual user who uses the system resources without contributing anything to the system" (Ramaswamy & Liu, 2003, p.1)。ここで用いる「ただ乗り」はP2Pシステム、特にファイル共有システムの文脈における用法で、経済学での使われ方とは異なる点に注意してください。
(*10) ちなみにBitcoinやEthereumでは、後続の取引記録から十分支持された取引記録を保存したアカウントに対してのみ報酬としてBitcoin/Ethereumを新規発行する (よって決めるプロセスに真面目に参加したアカウントのみ報酬を得られる) というルールでただ乗りへの対策をしています。
(*11) 報酬量は元々賭けていたトークン量に比例します。
(*12) 筆者の個人的な提案ですが、nounsDAOは「投票に参加した回数が増える程、そのNFTが持つ特徴が今後新規発行されるNFTで出現しにくくなる」といった仕様を導入するとただ乗り対策になると思います。現在nounsDAOでは各NFTの特徴は完全にランダムでレアリティに差がありませんが、投票の積極性に応じて各NFTに (事後的に) レア度を付けていくのです。毎日NFTを新規発行するnounsDAOの特性を活かした面白いやり方だと思います。
(*13) 加えて、トークンに人を動かすインセンティブとなるだけの価値を乗せる仕組みも別途考えなければなりません。さらには、たとえ価値があるトークンだとしても、そもそも人々はその報酬トークン量を最大にするように動くのか?という問題すらあります。こうした問題は考え出すとキリがありません。
この記事が気に入ったらサポートをしてみませんか?