今回は分散型台帳技術の授業で習ったDIDについて改めてまとめてみようと思います。
2020年9月時点でDeFiと呼ばれる金融分野におけるブロックチェーンテクノロジーが、世界中で新たにブームを巻き起こしています。
特にUniswap、Curve、CompundなどのDeFiプロダクトは、「Bitcoinのフォークのように影響力を失うもの」「監査や法整備が整っていないからユーザーが集まらない」のような予想をもっぱら覆す勢いです。
一方、ヨーロッパに目を向けてみると、「個人主権」の動きもかなり活発です。
今回はDIDの名前空間(namespace)への応用(namecoin)についてまとめました。
過去の状態の不変のログであるブロックチェーンは、時間的な連続性を提供するため、物理的な状況が変化した場合でもIDを追跡するのに役立ちます。
IDは、欠落しているWeb 3インフラストラクチャの最も重要な部分の1つであり、dAppエコシステム全体が使用できるIDレイヤーを構築するためにさまざまなアプローチを取っている多くのプロジェクトがあります。
この中で世界の起業家が注目している2つの主要なレイヤーは、名前空間(namespace)と証明です。
名前空間(namespace)
分散IDにおいて重要なのは、中央に所有されているレジストリなしで、どのように世界中の人々、デバイス、およびその他のエンティティを識別しているかという点です。
ブロックチェーンの場合、自分自身をアドレスで識別しています
— 0x9992437898114d2770522e050883d6b2dfc48326
のような長い文字列であり、覚えにくいです。
代わりに、各アドレスを人間が読める一意の名前にマッピングできたらどうでしょうか。
こんな感じ。
コンピュータサイエンスでは、名前空間を使用してオブジェクトを編成し、同じ名前を共有する複数のオブジェクト間で名前が衝突することなく識別できるようにします。
主な例として、ファイルシステム(ファイルに名前を割り当てる)やDNS(ウェブサイトに名前を割り当てる)などがあります。
同様に、ブロックチェーンの場合は、アドレスと名前の一意のキーと値のペアのグローバルテーブルを維持する必要があります。
さらに理想的として、このようなテーブルがすべて同時に安全で、分散化され、人間にとって意味のあるものであることが望まれます。
ここでZookoの三角形をみてみましょう。
Zooko’s Triangle
Zooko’s Triangleは、Zcash Zooko WilcoxのCEOが名付ました。
これは、ネットワーク内のネーミングシステムの3つの望ましいプロパティのトリレンマです。
- 安全(secure):名前を検索すると、なりすましではなく正しい値が得られます。
- 分散型(Decentralized):すべての名前を管理する中央機関はありません。
- 人間にとって意味がある(Human-meaningful):名前は、長いランダムな文字列ではなく、実際に覚えることができるものです。
Zookoは、上記の特性のうち2つ以上を達成できるデジタル名はないと主張しました。
このフレームワークを念頭に置いて検討されたいくつかの例はこちら:
- DNSSEC: DNSのセキュリティ拡張機能で意味付を分散提供できますが、ルートサーバーへの侵害に対して安全ではありません。
- Bitcoin: アドレスは安全で分散化されていますが、人間にとって意味のあるものではありません。
- I2P: 匿名の検閲耐性のあるピアツーピア通信用のプロトコルであり、安全に(ローカルで実行することにより)名前変換サービスを使用し、human-meaningfulな名前を提供しますが、分散型ネットワークで使用する必要があります。
三角形を二乗する??
Zookoがトリレンマを推測して以来、Zookoの三角形にはいくつかの解決策がありました。
Nick Szaboは論文「“Secure Property Titles with Owner Authority”」で解決策を提案しました。
3つのプロパティすべてがビザンチンフォールトトレランスの限界まで達成できることを示しています。
また、Aaron Swartzは、PoWを使用して名前の所有権のコンセンサスを確立するビットコインに基づくネーミングシステムについて後述しました。このソリューションは、Namecoinの作成に大きな影響を与えました。Namecoinはビットコインの最初のフォークであり、Doo -Bitの基礎となるブロックチェーンでもあり、Zookoの三角形を二乗する分散型DNSの最初の実装です。というのもDot-Bitは、ユーザーが現在のドメインを.bitアドレスに転送できるようにすることで機能します。
残念ながらNamecoinはリリース以来、ユーザーエクスペリエンスが低いため、ほとんど採用に至っていません。そこでNamecoin開発者が潜在的なパートナーシップを求めてGoogleとICANNにアプローチしたという噂もありましたが、中央当局に代わる分散型DNSを構築する目的に反するものです。
その後Onenameが2014年3月に登場しました。これはプリンストンの研究者Ryan SheaとMuneeb Aliが開発したもので、ビットコインブロックチェーンにユーザー名と個人プロファイルデータを保存するもう1つのIDシステムです。
今日Onenameは、Blockstack dAppプラットフォームのネームスペースのレジストラ(GoDaddyなど)であり、BlockstackユーザーがさまざまなdAppですべての個人データの所有権を保持できるようにするテクノロジーでもあります。
ENSはEthereumのDNSであり、同時に安全で分散化されています。スマートコントラクトは、GoDaddyのような集中型サービスを使用する代わりに、Ethereum名を管理および更新するレジストラとして機能します。誰でも読める.ethサブドメインを作成でき、ENS resolverは名前をアドレスに変換するトランスレーターとして機能します。
Metamask、MyCrypto、StatusなどのENSをサポートするウォレットの場合、「0x4cbe58c50480…」の代わりに「alice.eth」などの覚えやすい名前に送金できます。ENSの立ち上げ以来、ENSは160,000を超える名前を登録しており、320万を超えるETHが名前に入札するために預金されています。
Handshakeは、Joseph Poon(Lightning Network and Plasmaの作成者)が率いるプロジェクトで、DNSルートゾーンを分散化し、ICANNと認証局を置き換えています。ハンドシェイクは、すべてのピアツーピアフルノードがルートゾーンファイルをホストするルートサーバーである新しいUTXOブロックチェーン上に構築されており、ルートゾーンを無検閲、無許可、ゲートキーパーなしにしています。Namebaseなどのプロジェクトでは、ユーザーがハンドシェイクブロックチェーンにトップレベルドメインを登録できるようにし、ウォレットを構築してHandshake coin(HNS)と交換することで、Handshakeを使いやすくしています。
Zookoの三角形のソリューションとしている他のプロジェクトには、OpenAliasとPortal Networkがあります。