1kx:分散型ソーシャルプロトコルの深い解読

フォーサイトニュース
2023-12-02 10:10:08
コレクション
アイデンティティ、データ、ストレージなどの観点から、主流のWeb3ソーシャルプラットフォームの技術ソリューションを比較する。

作者: 1kx

編訳:Luffy,Foresight News


商業的な動機に駆動され、企業が管理するソーシャルメディアプラットフォームが登場し、人々のネットワーク参加文化に対する初期の希望を大きく損なっています。ネットワーク情報技術は本質的に文化生産を民主化するはずでしたが、今日では、これらの利益駆動型プラットフォームがネットワーク行動を制限し、形作っています------「いいね」はコンテンツへの感謝を示すものではなく、商業的なツールです。

分散型技術と連合プロトコルに基づいて構築された代替的なソーシャルメディアプラットフォームは、ネットワークソーシャルの原初的なビジョンを再現しています。データはユーザーによって制御され、分散型データベースに記録され、フロントエンドはコミュニティによって駆動され、審査はコミュニティの好みの表現です。アルゴリズムはユーザーによって選択されます。これはオープンソースの精神が革新を推進するものです。

分散型と代替的ソーシャルメディアの歴史

ネットワークが商業、エンターテインメント、ソーシャルインタラクションの中心になる前、主に学術および軍事分野のツールでした。ティム・バーナーズ=リー(Tim Berners-Lee)は、最初のネットワークプロトコルを策定する際に平等主義のビジョンを持っていました:インターネットの初期設計は分散型ネットワークであり、情報はノード間で自由に伝播でき、個人が制御することはできず、単一障害点も存在しませんでした。

しかし、ネットワークの商業化が進むにつれて、検索エンジンやソーシャルメディアの巨人などの中央集権型プラットフォームが主導権を握るようになりました。これらの実体は大きな価値を提供していますが、初期の分散型精神から逸脱し、現在のWeb2環境をもたらしました。

1kx:深度解読去中心化社交协议

代替的なソーシャルネットワークの発展における重要な革新は、連合プロトコルの概念の登場です。連合ネットワークとは、複数の独立したサーバーまたは「ノード」で構成されたシステムであり、これらが協力してソーシャルネットワークを形成します。これは、1つの組織がすべてのサーバーを制御する中央集権型プラットフォームとは異なります。

連合ネットワークシステムでは、各サーバーが共有プロトコルに従ったソフトウェアを実行し、相互に通信できるようになります。1つのサーバーに登録されたユーザーは、他のサーバーのユーザーをシームレスにフォローし、他のサーバーのユーザーとインタラクションし、コンテンツを共有できます。連合プロトコルの例には、ActivityPubやOStatusがあり、これらはMastodonやPeerTubeなどの連合プラットフォームをサポートしています。

連合システムの設定では、ユーザーは信頼できるサーバーを選択でき、異なるサーバーに移行したり、自分のサーバーを設定したりすることができ、より多くの自主性が与えられます。「Fediverse」(「連邦」と「宇宙」の合成語)という用語は、このようなシステムを説明するために使用されます。FediverseはGNU Socialプラットフォームとその前身(StatusnetやLaconica)から始まりましたが、真の転換点はActivityPubプロトコルの開発と広範な採用であり、このプロトコルは2018年にW3Cによって推奨標準として発表されました。

Web3では、一度データがチェーン上に移植されると、連合ソーシャルネットワークは分散型システムのデフォルト状態となります。ブロックチェーンはコンテンツを保存するバックエンドサーバーとして機能し、フロントエンドはそのコンテンツにインデックスを付けてユーザーに直接提供します。アイデンティティはユーザーのウォレットを管理する公開鍵と秘密鍵のペアに結びついており、ユーザーは自分が生成したデータやコンテンツを簡単に検証できます。さらに、NFTなどのチェーン上の原語を使用することで、保存されたコンテンツをメタデータにバンドルし、ドメイン名や分散型アイデンティティ(DID)として機能させることができます。

ActivityPubの動作原理に似て、Web3プロトコルはユーザーノード間の認証された関係を通じてソーシャルグラフを導くことを目指しています。任意のフロントエンドがこれらのコンテンツをインデックスし、提供できるため、フロントエンド層には激しい競争が存在し、新機能が急速に発展しています。また、データがチェーン上に保存されるため、ユーザーは好みのアルゴリズムを選択でき、特定のアルゴリズムを使用してデータの価値を再取得するためのインセンティブを得ることができます。これは、より直接的なコンテンツの貨幣化手段と組み合わさり、主に貨幣化から排除されているクリエイターにとって、これらのプラットフォームへの需要を促進するコンテンツがあっても、より良い全体的な体験を提供します。

プロトコルの比較

分散型ソーシャルメディアプロトコルの革新を真に理解するためには、それらを実現する技術を理解する必要があります。ここでは、すべてのソーシャルプロトコルを含めるのではなく、最も人気のあるソーシャルプロトコルのいくつかを選択しています:

1kx:深度解読去中心化社交协议

アイデンティティ / ネームスペース

連合および分散型ソーシャルグラフまたはネットワークプロトコルにおいて、「ネームスペース」とは、ユーザー識別子または他のリソースがユニークなドメインであることを指します。これは、1つのドメイン/サーバーを別のドメイン/サーバーと区別するためのリソースまたはアイデンティティの方法であり、複数のドメイン間での統合や通信時に衝突や曖昧さがないことを保証します。

異なる分散型ソーシャルプロトコルのアイデンティティおよび関連ネームスペースには、単純な鍵ペア(Nostr、Scuttlebutt)から、ホスティングされたプロフィール(ActivityPub)を指すURI、さらにはNFTなどのチェーン上の原語(および最近のERC-6551拡張、例えばLens V2)など、より複雑なモデルまでのすべての範囲が含まれます。

Farcasterはこれらの技術の良い例です。Farcasterアカウントは、ネットワーク上のユニークなエンティティを表します。各アカウントには、Farcaster ID(fid)と呼ばれるユニークなデジタル識別子があります。アイデンティティは、IdRegistryと呼ばれるイーサリアム契約を使用してチェーン上で管理され、ユーザーはIdRegistryにトランザクションを発起して新しいfidを取得します。fidを持つアドレスはユーザーの管理アドレスです。IdRegistryは、fidがアドレス間で転送できることを保証し、同じfidを持つ2つのアドレスが存在しないようにします。Farcasterは、このネームスペースを拡張して、チェーン上またはチェーン外で公開されたENSドメイン名をサポートしています。ユーザーは、ユーザー名を取得するためにネットワークに署名証明を提出する必要があります。

一方、ActivityPubは、各ユーザーを一意のURI(通常はHTTPS URL)で識別します。このURIはユーザーのプロフィールを指し、Fediverse内での彼らのグローバル識別子として機能します。これらのURIをよりユーザーフレンドリーにするために、多くのActivityPubプラットフォームはWebfingerと呼ばれるシステムを使用しています。Webfingerは、ユーザーが「@username@domain.com」のようなアイデンティティ識別子を持つことを可能にします。

LensやCyberConnectは、ユーザーのプロフィールをNFTとして管理します。Lensの例では、ユーザーアドレスはProfile NFTを保存し、単一のアドレスは複数のProfile NFTを保存できます。各Profile NFTは、ユーザーの活動の全履歴をカプセル化しています。さらに、Profile NFTにはFollowModuleがあり、これは本質的に異なるアカウントがFollow NFTを取得する方法を管理するための一連のルールです。これらのFollow NFTは、アカウントとプロフィール間の関係を直接チェーン上に記録します。また、プロフィールとは別に作成できるハンドルも存在し、1つのプロフィールから別のプロフィールにリンクしたり、リンクを解除したりできます。ハンドルは独自のネームスペースに存在します(例:lens/@alice)。

データ

データは分散型ネットワークの最も重要な特徴であると言えます。なぜなら、データの作成と標準化がこれらのシステムの基盤だからです。ここでデータを管理する最も一般的な技術は、JSONや一般的な関係オブジェクト(例えば、いいね、フォロー)などの標準化された形式を使用することです。コアデータオブジェクトには通常、以下が含まれます:

  • 主体 & オブジェクト:定義された「主体」(例えば、ユーザー)と「オブジェクト」(例えば、投稿やメッセージ)。

  • 出版物:投稿やコメントは「出版物」としてカプセル化され、通常はURLで外部コンテンツにリンクされます。

  • 追加のみのログ内のコンテンツ:各エントリ(投稿または更新に関係なく)は、離散的なコンテンツ項目のログであり、順番に追加されて保存されます。

特定のプロトコルがどのように機能するかを理解するために、いくつかの例を詳しく見てみましょう。

ActivityPubは、さまざまなソーシャルインタラクション(例えば、投稿やいいね)を表すためにActivityStreams 2.0データ形式(JSONベースのデータ構造)を利用しています。このプロトコルには、クライアントからサーバー(C2S)とサーバーからサーバー(S2S)の2つの主要なコンポーネントがあります。C2Sは、ユーザーがクライアントアプリケーションを介してそれぞれのサーバーとインタラクションすることを可能にします。一方、S2Sはサーバー間の通信を促進し、プロトコルの堅牢な連合特性を実現します。

ActivityPubでは、エンティティは「主体」(通常はユーザーアカウントまたはグループ)と「オブジェクト」(コンテンツやアクション、例えば投稿やいいね)に分類されます。主体がオブジェクトに対してアクションを実行すると、「活動」オブジェクトが作成されます(例えば、「作成」、「フォロー」、「いいね」)。

Web3ソーシャルグラフは、ActivityPubの多くのコアアイデアを取り入れていますが、それらをブロックチェーンに適用しています。例えば、Lens Protocolは「出版物」を導入し、これは投稿、ミラー、コメント、その他の形式のメディアなど、さまざまなユーザー生成コンテンツをカプセル化します。各出版物はContentURIに関連付けられ、分散型プロトコル(例えばIPFSやArweave)または中央集権型ストレージサービス(例えばAWS S3)に保存されている特定のコンテンツを指します。この設計により、ユーザーのプロフィールとすべての関連出版物が安全に彼らの個人ウォレットに保存され、中央集権型データベースへの依存から解放されます。

さらに、Web2アーキテクチャと比較して、Web3はユーザーコンテンツと影響力を貨幣化するためのより直接的な方法を提供します。ユーザーはFollow NFTの鋳造に対して料金を請求したり、Collect Modulesを出版物と統合したりできます。後者のオプションでは、出版物のContentURIリンクに関連するNFT鋳造料金を請求できます。これらの機能に加えて、Lens ProtocolはGraphQL APIを提供し、フロントエンドインターフェースからブロックチェーンコンポーネントを隠蔽することで、以前の分散型ソーシャルネットワークよりもユーザーフレンドリーな体験を提供します。

最終的に、多くの分散型ソーシャルネットワークプロトコルは、追加のみのデータ構造を作成し、ユーザーキーを介して認証を行います。例えば、CyberConnectでは、ユーザー中心のデータはデータストリームとして表され、データ所有者のみが更新を許可されます。データの各更新は、追加のみの提出ログの形式でデータストリームに付加され、生成されたデータ構造はMerkle DAGと呼ばれるハッシュリンクデータ構造になります。データタイプには、コンテンツ、コレクション、コメント、サブスクリプションが含まれます。

Scuttlebuttも追加のみのログデータ構造を使用しています。各ユーザーには独自のログがあり、新しいメッセージや操作はユーザーのアイデンティティによって署名された後に末尾に追加されます。また、「blob」と呼ばれるバイナリデータの共有もサポートしています。これらのデータは画像、動画、またはその他のバイナリコンテンツである可能性があります。Blobは追加のみのログとは別に保存されますが、これらのBlobへの参照(ハッシュ)はログに含めることができます。

Farcasterでは、メッセージは投稿、フォロー、プロフィール画像の追加などの公共の更新であり、これらのメッセージはprotobufとしてエンコードされ、アカウントの署名者によってハッシュ処理および署名される必要があります。十分なストレージスペースがあれば、ユーザーはHubにメッセージを投稿できます。Hubは各メッセージを受け入れる前に、その署名者の有効性を確認します。

ストレージ

初期の分散型プロトコルのデータストレージは主にオフチェーンでした。例えば、Scuttlebuttはピアツーピアのゴシップネットワークを使用して、データをユーザーのローカルデバイスに保存します。この方法はデータ主権を確保し、ユーザーが自分の情報を完全に制御できるようにします。しかし、これはデータの可用性がユーザーのデバイスがオンラインであるか、ネットワーク内の他のノードがデータのコピーを持っているかに依存することを意味します。時間が経つにつれて、ストレージスペースを管理するために、一部のScuttlebuttクライアントは古いまたはあまり関連性のないデータを削除するためのガベージコレクション戦略を実施する必要があるかもしれません。

このピアツーピアアプローチの代替案は、データストレージサーバーの出現です。Matrixを例に取ると、複数のホームサーバーがルームの履歴のコピーを保存し、相互に同期します。ユーザーがルーム内でメッセージ(または任意のイベント)を送信すると、彼らのホームサーバーはそのイベントを他のホームサーバーにブロードキャストし、これらのホームサーバーはそのイベントを保存し、接続されたクライアントに転送します。同様に、ActivityPubはネットワーク内の各インスタンス(またはサーバー)がそのデータを保存することを可能にし、通常はデータベースに保存されます。データベース(リレーショナル、NoSQLなど)の選択は、ActivityPubソフトウェアの具体的な実装に依存します。例えば、人気のあるActivityPubプラットフォームであるMastodonはPostgreSQLデータベースを使用しています。

Cyberconnect、Farcaster、Lensなどのプロトコルは、ストレージにブロックチェーンを採用しています。オンチェーンストレージはデータの不変性と検証可能性を保証し、基盤となる合意メカニズムを使用して状態を同期する分散型アプリケーションに堅固な基盤を提供します。しかし、この方法はスケーラビリティの課題をもたらす可能性があります。なぜなら、各データがチェーン上に保存される必要があり、高額な取引手数料や遅い取得時間を引き起こす可能性があるからです。

これにより、多くのWeb3ソーシャルプロトコルはハイブリッドアプローチを試み、オンチェーンストレージを使用して低頻度の操作(例えばプロフィール、サブスクリプション)を実行し、オフチェーンストレージを使用して高頻度のイベント(例えばいいね、リツイート、コメント)を実行したり、オフチェーンストレージを一時的な措置として使用して、一定の時間間隔でデータをバッチアップロードしてチェーン上に保存したりします。

CyberConnectは、ユーザー接続間の頻繁な更新を効果的に処理するために、分散型データストレージにハッシュリンクリストを採用しています。接続が開始されると、「操作ログ」が作成されます。以降の状態変更(例えばフォローとフォロー解除の切り替え)は、このログに新しいノードとして追加されます。これらの更新は最初は中央集権型サーバーに保存されますが、定期的にArweaveやIPFSなどの分散型ストレージプラットフォームにバッチアップロードされます。データを迅速に取得するために、操作ログ内のノードは中央集権型で保存されます。しかし、ユーザーはこのハッシュリンクリストをブラウズすることでデータの完全性を独立して検証できます。特定のデータクエリが中央集権型サーバーに依存している場合でも、CyberConnectのシステムは完全に分散型でありながら高性能を提供するように設計されています。

Farcasterは、類似のハイブリッドアプローチを使用しています:チェーン上の契約は、一貫性と分散型が重要な低頻度の操作に使用されます。アカウント、ユーザー名、ストレージ、キーは一連のイーサリアム契約によって管理されます。オフチェーンシステムは、パフォーマンスに依存する高頻度の操作に使用されます。ユーザーアカウントが作成したメッセージは、Farcaster hubのピアツーピアネットワーク上に保存され、伝播されます。

議論

分散型ソーシャルプロトコルは、デジタルインタラクションにおけるユーザー体験を根本的に変える可能性があります。Web3の推進により、公私鍵ペアの加速採用は、この文脈におけるアイデンティティ原語のより広範な理解に寄与し、Web2ソーシャルメディア企業の継続的な審査とデータキャプチャは、より多くのユーザーを他の場所に移行させるでしょう。これらの分散型ソーシャルプロトコルの採用曲線は加速すると予想されます。

革新的なアプリケーションの発展を促進するために、プロトコル開発者とオープンソースの貢献者は、現在のインフラストラクチャ層で使用されている基本的なデータタイプと関係オブジェクトを超えることが切実に求められています。既存の原語は伝統的なWeb2ソーシャルメディアの機能を十分に包含していますが、依然として大きな拡張と革新の可能性があります。ここで議論されているほとんどのプロトコルは、本質的にシステム内の拡張性をサポートしており、将来の開発とオープンソースの貢献に堅固な基盤を提供します。

しかし、相互運用性も重要です。フロントエンド開発者が独立して機能を強化できる一方で、強化された機能が同じ基盤プロトコルに基づいて構築された他のアプリケーションと相互運用できない場合、システム全体の利益を損なう可能性があります。さまざまなアプリケーション間の互換性とシームレスな統合を確保することは、分散型ソーシャルプロトコルの長期的な成功と採用にとって極めて重要です。

データストレージの分野において、Web3ソーシャルプロトコルはハイブリッドアプローチを傾向としています。アイデンティティや主要コンテンツなどの高価値資産をオンチェーン原語に割り当て、いいねなどの低リスクコンテンツをオフチェーンソリューションに割り当てるこのバランスの取れたアプローチは、重要なデータの完全性と安全性を保持しつつ、従来のソーシャルメディアプラットフォームに近いユーザー体験を提供します。

分散型ネットワークは、人間のコミュニケーション、情報共有、コミュニティ構築を変える可能性があります。ユーザーの自主権、プライバシー、有機的な関係の育成を優先することで、これらのネットワークはより公平でユーザー中心のデジタル環境を築く道を開いています。さらに、これらのネットワークの分散型の性質は、情報とリソースへのアクセスの民主化を助け、中央集権的な制御に関連するリスクを軽減します。


ChainCatcherは、広大な読者の皆様に対し、ブロックチェーンを理性的に見るよう呼びかけ、リスク意識を向上させ、各種仮想トークンの発行や投機に注意することを提唱します。当サイト内の全てのコンテンツは市場情報や関係者の見解であり、何らかの投資助言として扱われるものではありません。万が一不適切な内容が含まれていた場合は「通報」することができます。私たちは迅速に対処いたします。
チェーンキャッチャー イノベーターとともにWeb3の世界を構築する