技術的な視点から、主流のWeb3ソーシャルプラットフォームはどのように革新するのか?
執筆:1kx
編纂:Luffy,Foresight News
商業的な動機に駆動されて、企業が管理するソーシャルメディアプラットフォームが登場し、人々のネットワーク参加文化に対する最初の希望を大きく削弱しました。ネットワーク情報技術は根本的に文化生産を民主化するはずでしたが、現在、これらの利益駆動のプラットフォームはネットワーク行動を制限し、形成しています------「いいね」はコンテンツへの感謝の表現ではなく、商業化されたツールです。
分散型技術と連合プロトコルに基づいて構築された代替的なソーシャルメディアプラットフォームは、ネットワークソーシャルの原初のビジョンを再現しています。データはユーザーによって制御され、分散型データベースに記録され、フロントエンドはコミュニティによって駆動され、審査はコミュニティの好みの表現です。これはオープンソースの精神が革新を推進しています。
分散型と代替的ソーシャルメディアの歴史
ネットワークが商業、エンターテインメント、ソーシャルインタラクションの中心になる前、主に学術および軍事分野のツールでした。ティム・バーナーズ=リー(Tim Berners-Lee)は、最初のネットワークプロトコルを策定する際に平等主義のビジョンを持っていました:インターネットの最初の設計は分散型ネットワークであり、情報はノード間で自由に伝播され、個人が制御することはできず、単一障害点も存在しませんでした。
しかし、ネットワークの商業化が進むにつれて、検索エンジンやソーシャルメディアの巨人などの集中型プラットフォームが主導権を握るようになりました。これらの実体は大きな価値を提供していますが、最初の分散型精神から逸脱し、現在のWeb2環境をもたらしました。
代替的なソーシャルネットワークの発展における重要な革新は、連合プロトコルの概念の出現です。連合ネットワークは、複数の独立したサーバーまたは「ノード」で構成されるシステムを指し、これらが協力してソーシャルネットワークを形成します。これは、1つの組織がすべてのサーバーを制御する集中型プラットフォームとは異なります。
連合ネットワークシステムでは、各サーバーは共有プロトコルに従ったソフトウェアを実行し、相互に通信できるようになります。1つのサーバーに登録されたユーザーは、他のサーバー上のユーザーをシームレスにフォローし、他のサーバー上のユーザーとインタラクションし、コンテンツを共有できます。同じプラットフォーム上にいるかのように。連合プロトコルの例には、ActivityPubやOStatusがあり、これらはMastodonやPeerTubeなどの連合プラットフォームをサポートしています。
連合システムの設定では、ユーザーは信頼するサーバーを選択でき、異なるサーバーに移行したり、自分のサーバーを設定したりすることができ、より多くの自主権が与えられます。「Fediverse」(「連邦」と「宇宙」の合成語)という用語は、このようなシステムを説明するために使用されます。FediverseはGNU Socialプラットフォームおよびその前身(StatusnetおよびLaconica)から始まりましたが、真の転換点はActivityPubプロトコルの開発と広範な採用であり、このプロトコルは2018年にW3Cによって推奨標準として発表されました。
Web3では、一度データがチェーン上に移植されると、連合ソーシャルネットワークは分散型システムのデフォルト状態になります。ブロックチェーンはコンテンツを保存するバックエンドサーバーとして機能し、フロントエンドはそのコンテンツにインデックスを付け、ユーザーに直接提供します。アイデンティティはユーザーのウォレットを管理する公開鍵と秘密鍵のペアにバインドされ、ユーザーは生成したデータやコンテンツを簡単に検証できます。さらに、NFTなどのチェーン上の原語を使用することで、保存されたコンテンツをメタデータにバンドルし、ドメイン名や分散型アイデンティティ(DID)として機能させることができます。
ActivityPubの動作方法に似て、Web3プロトコルはユーザーノード間の認証された関係を通じてソーシャルグラフを導くことを目指しています。任意のフロントエンドがこれらのコンテンツをインデックスし、提供できるため、フロントエンド層には激しい競争が存在し、新機能が急速に発展しています。さらに、データがチェーン上に保存されるため、ユーザーは好みのアルゴリズムを選択でき、特定のアルゴリズムを使用してデータの価値を再取得するためのインセンティブを得ることができます。これは、より直接的なコンテンツの貨幣化手段と組み合わさり、貨幣化から大きく排除されているクリエイターにとって、これらのプラットフォームへの需要を促進する彼らのコンテンツにもかかわらず、より良い全体的な体験を提供します。
プロトコルの比較
分散型ソーシャルメディアプロトコルの革新を真に理解するためには、それらを実現する技術を理解する必要があります。ここでは、すべてのソーシャルプロトコルを含めているわけではなく、最も人気のあるソーシャルプロトコルのいくつかを選択しています:
アイデンティティ / 名前空間
連合および分散型ソーシャルグラフまたはネットワークプロトコルにおいて、「名前空間」はユーザー識別子または他のリソースがユニークなドメインであることを指します。これは、1つのドメイン/サーバーを別のドメイン/サーバーと区別するためのリソースまたはアイデンティティの方法であり、複数のドメイン間での統合や通信時に衝突や曖昧さがないことを保証します。
異なる分散型ソーシャルプロトコルのアイデンティティおよび関連する名前空間には、単純な鍵ペア(Nostr、Scuttlebutt)から、ホスティングされたプロフィール(ActivityPub)を指すURI、さらにはNFTなどのチェーン上の原語(および最近のERC-6551拡張、例えばLens V2)などのより複雑なモデルまで、すべての範囲が含まれます。
Farcasterはこれらの技術の良い例です。Farcasterアカウントはネットワーク上のユニークな実体を表します。各アカウントにはFarcaster ID(fid)と呼ばれるユニークなデジタル識別子があります。アイデンティティは、IdRegistryと呼ばれるEthereumコントラクトを使用してチェーン上で管理され、ユーザーは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は類似のハイブリッドアプローチを使用しています:オンチェーンコントラクトは、一貫性と分散化が重要な低頻度の操作に使用されます。アカウント、ユーザー名、ストレージ、キーは一連のEthereumコントラクトを使用して管理されます。オフチェーンシステムは、パフォーマンスに依存する高頻度の操作に使用されます。ユーザーアカウントが作成したメッセージは、Farcaster hubのピアツーピアネットワーク上に保存され、伝播されます。
議論
分散型ソーシャルプロトコルは、デジタルインタラクションにおけるユーザー体験を根本的に変えることが期待されています。Web3の推進により、公私鍵ペアの加速的な採用は、この文脈におけるアイデンティティ原語の理解を広めるのに役立ち、Web2ソーシャルメディア企業の継続的な審査とデータキャプチャは、より多くのユーザーが他の場所に移行することを促進するでしょう。これらの分散型ソーシャルプロトコルの採用曲線が加速することを期待しています。
革新的なアプリケーションの発展を促進するために、プロトコル開発者とオープンソースの貢献者は、現在のインフラストラクチャ層で使用されている基本的なデータタイプと関係オブジェクトを超えることが急務です。既存の原語は従来のWeb2ソーシャルメディアの機能を十分に包含していますが、依然として大きな拡張と革新の可能性があります。ここで議論されているほとんどのプロトコルは、本質的にシステム内の拡張性をサポートしており、将来の開発とオープンソースの貢献に堅固な基盤を提供します。
しかし、相互運用性も重要です。フロントエンド開発者が独自に機能を強化できる一方で、強化された機能が同じ基盤プロトコルに基づいて構築された他のアプリケーションと相互運用できない場合、システム全体の利益を損なう可能性があります。さまざまなアプリケーション間の互換性とシームレスな統合を確保することは、分散型ソーシャルプロトコルの長期的な成功と採用にとって重要です。
データストレージの分野において、Web3ソーシャルプロトコルはハイブリッドアプローチを傾向としています。アイデンティティや主要コンテンツなどの高価値資産をオンチェーン原語に割り当て、いいねなどの低リスクコンテンツをオフチェーンソリューションに割り当てるこのバランスの取れたアプローチは、重要なデータの完全性と安全性を保持するだけでなく、従来のソーシャルメディアプラットフォームに近いユーザー体験を提供します。
分散型ネットワークは、人間のコミュニケーション、情報共有、コミュニティ構築を変える可能性があります。ユーザーの自主権、プライバシー、オーガニックな関係の育成を優先することにより、これらのネットワークはより公平でユーザー中心のデジタル環境を築くための道を開いています。さらに、これらのネットワークの分散型特性は、情報とリソースへのアクセスの民主化を助け、集中型制御に関連するリスクを軽減します。