著者: 1kxコンパイラ: Luffy, Foresight News商業的な動機に突き動かされて、企業が管理するソーシャルメディアプラットフォームが出現し、オンラインエンゲージメントの文化に対する当初の希望を大きく損なうようになりました。 オンライン情報技術は、文化的な生産を根本から民主化するはずだが、今日では、これらの利益主導のプラットフォームがオンライン行動を制限し、形作っている - 「いいね」はコンテンツに対する感謝ではなく、商業化のためのツールである。分散型テクノロジーとフェデレーションプロトコルに基づいて構築された代替ソーシャルメディアプラットフォームは、オンラインソーシャルネットワーキングの元のビジョンを再現します。 データはユーザーによって制御され、分散型データベースに記録され、フロントエンドはコミュニティ主導であり、モデレーションはコミュニティの好みの表現であり、アルゴリズムはユーザーによって選択されます。 これは、イノベーションを推進するオープンソースの精神です。### 分散型ソーシャルメディアとオルタナティブソーシャルメディアの歴史ウェブがビジネス、娯楽、社会的交流のハブになる前は、主に学術や軍事分野のツールでした。 ティム・バーナーズ・リーは、平等主義的なビジョンを持つ最初のネットワークプロトコルを開発しました:インターネットはもともと、情報がノード間を自由に移動できる分散型ネットワークとして設計され、単一の個人が制御したり、単一障害点がなくなったりしました。しかし、ウェブの商業化が進むにつれて、検索エンジンやソーシャルメディアの巨人などの中央集権的なプラットフォームが支配的になりました。 これらのエンティティは大きな価値を提供する一方で、本来の分散化の精神から逸脱し、現在のWeb2環境につながっています。 代替ソーシャルネットワークの開発における重要な革新は、フェデレーションプロトコルの概念の出現です。 フェデレーションネットワークは、組織がすべてのサーバーを制御する中央集権的なプラットフォームとは対照的に、連携してソーシャルネットワークを形成する独立したサーバーまたは「ノード」のシステムです。フェデレーテッド・ネットワーク・システムでは、各サーバーは共有プロトコルに従うソフトウェアを実行し、相互に通信できるようにします。 1つのサーバーに登録されたユーザーは、他のサーバー上のユーザーをシームレスにフォローしたり、他のサーバー上のユーザーと対話したり、同じプラットフォームにいるかのようにコンテンツを共有したりできます。 フェデレーション プロトコルの例としては、Mastodon や PeerTube などのフェデレーション プラットフォームをサポートする ActivityPub や OStatus などがあります。フェデレーテッド・システムの設定では、ユーザーは信頼できるサーバーを選択したり、別のサーバーに移行したり、独自のサーバーを設定したりすることができ、より多くの自律性が与えられます。 「フェディバース」(「連邦」と「コスモス」のかばん語)という用語は、そのようなシステムを説明するために使用されます。 フェディバースはGNU Socialプラットフォームとその前身(StatusnetとLaconica)から始まりましたが、本当のターニングポイントは、2018年にWorld Wide Web Consortium(W3C)によって勧告として公開されたActivityPubプロトコルの開発と普及でした。Web3では、データがオンチェーンで移植されると、分散型システムのデフォルトの状態はフェデレーションソーシャルネットワークになります。 ブロックチェーンはコンテンツを保存するためのバックエンドサーバーとして機能し、フロントエンドはこのコンテンツにインデックスを付けてユーザーに直接提供します。 IDは、ユーザーのウォレットを管理する公開鍵と秘密鍵のペアに関連付けられているため、ユーザーは生成したデータやコンテンツを簡単に検証できます。 さらに、NFTなどのオンチェーンプリミティブを使用すると、保存されたコンテンツをメタデータにバンドルし、ドメイン名または分散型ID(DID)として機能することができます。ActivityPub の仕組みと同様に、Web3 プロトコルは、ユーザー ノード間の認証された関係を通じてソーシャル グラフを操作しようとします。 どのフロントエンドでもこのコンテンツをインデックス化して提供できるため、フロントエンド層では激しい競争が繰り広げられ、新機能が盛んに行われています。 さらに、データはオンチェーンに保存されるため、ユーザーは好みのアルゴリズムを選択でき、特定のアルゴリズムを使用してデータの価値を取り戻すようにインセンティブを与えることができます。 これは、より直接的なコンテンツ収益化の手段と相まって、コンテンツがこれらのプラットフォームの需要を喚起しているにもかかわらず、収益化からほとんど排除されてきたクリエイターに、より良い全体的な体験を提供します。### プロトコルの比較分散型ソーシャルメディアプロトコルの革新を真に理解するには、それらを実装する技術を理解する必要があります。 ここにはすべてのソーシャルプロトコルが含まれているわけではありませんが、最も人気のあるもののいくつかを選択していることは注目に値します。 ### ID / 名前空間フェデレーテッドおよび分散型のソーシャルグラフまたはネットワークプロトコルでは、「名前空間」は、ユーザー識別子またはその他のリソースが一意であるドメインです。 これは、あるドメイン/サーバーのリソースまたはIDを別のドメイン/サーバーと区別する方法であり、複数のドメイン間で統合または通信するときに競合やあいまいさがないようにする方法です。さまざまな分散型ソーシャルプロトコルのIDとアソシエーションの名前空間は、単純なキーペア(Nostr、Sputlebutt)から、管理されたプロファイルを指すURI(ActivityPub)、NFTなどのオンチェーンプリミティブ(最近ではLens V2などのERC-6551拡張機能)の使用まで多岐にわたります。Farcasterは、これらのテクノロジーの好例です。 Farcaster アカウントは、ネットワーク上で一意のエンティティを表します。 各アカウントには、Farcaster ID (fid) と呼ばれる一意の数値識別子があります。 IDは、IdRegistryと呼ばれるETHコントラクトを使用してオンチェーンで管理され、ユーザーは新しいFIDを取得するためにトランザクションを開始します。 FID を所有するアドレスは、ユーザーの管理アドレスです。 IdRegistry は、アドレス間で fid を転送できること、および 2 つのアドレスが同じ fid を持たないようにします。 また、Farcasterは、この名前空間を拡張して、オンチェーンまたはオフチェーンで公開されているENSドメイン名をサポートしています。 ユーザ名を要求するには、ユーザが署名の証明をネットワークに送信する必要があります。一方、ActivityPub は、一意の URI (通常は HTTPS URL) で各ユーザーを識別します。 URI はユーザーのプロファイルを指し、Fediverse のグローバル識別子として機能します。 これらの URI をより使いやすくするために、多くの ActivityPub プラットフォームでは Webfinger と呼ばれるシステムを使用しています。 Webfinger では、ユーザーは "@username@domain.com" に似た ID を持つことができます。LensとCyberConnectは、ユーザープロファイルをNFTとして管理します。 Lensの場合、1つのユーザーアドレスに1つのプロフィールNFTを保有し、1つのアドレスに複数のプロフィールNFTを保有することができます。 各プロフィールNFTは、ユーザーの活動の全履歴をカプセル化しています。 さらに、プロファイルNFTにはFollowModuleがあり、これは基本的に、さまざまなアカウントがFollow NFTを取得する方法を管理する一連のルールです。 これらのフォローNFTは、アカウントとプロファイル間の接続をオンチェーンで直接記録します。 また、プロファイルとは別に作成でき、あるプロファイルから別のプロファイルにリンクしたり、リンクを解除したりできるハンドルもあります。 ハンドルは独自の名前空間 (例: lens/@alice) に存在します。### データデータの作成と標準化はこれらのシステムの基盤であるため、データは間違いなく分散型ネットワークの最も重要な機能です。 ここでデータを管理する最も一般的な手法は、JSON や一般的なリレーショナル オブジェクト (いいね、フォロワーなど) などの標準化された形式を使用することです。 コア・データ・オブジェクトには、通常、次のものが含まれます。* Subject & Object: "Subject" (例: User) と "Object" (例: Post や Message) を定義します。*出版物:投稿またはコメントは「出版物」としてパッケージ化され、通常はURLを介して外部コンテンツにリンクされます。* ログの内容のみを追加する: 各エントリは、公開済みか更新済みかにかかわらず、個別のコンテンツ項目のログであり、順番に追加および保存されます。特定のプロトコルがどのように機能するかを確認するために、いくつかの例に飛び込みましょう。ActivityPub は、JSON ベースのデータ構造である ActivityStreams 2.0 データ形式を利用して、投稿やいいねなどのさまざまなソーシャル インタラクションを表します。 このプロトコルは、クライアントからサーバー (C2S) とサーバーからサーバー (S2S) の 2 つの主要コンポーネントで構成されています。 C2Sを使用すると、ユーザーはクライアントアプリケーションを介してそれぞれのサーバーと対話できます。 対照的に、S2Sはサーバー間の通信を容易にし、プロトコルの堅牢なフェデレーション性を可能にします。ActivityPub では、エンティティは "プリンシパル" (通常はユーザー アカウントまたはグループ) と "オブジェクト" (投稿やいいねなどのコンテンツまたはアクション) に分類されます。 サブジェクトがオブジェクトに対してアクションを実行すると、作成、フォロー、いいねなどのアクティブオブジェクトが作成されます。Web3 ソーシャル グラフは、ActivityPub のコア アイデアの多くを借用していますが、それらをブロックチェーンに適用しています。 たとえば、Lens Protocolは、投稿、ミラー、コメント、その他の形式のメディアなど、さまざまなユーザー生成コンテンツをカプセル化する「パブリケーション」を導入しています。 各パブリケーションは、FILやArweaveなどの分散型プロトコル、またはAWS S3などの集中型ストレージサービスに保存された特定のコンテンツを指すContentURIに関連付けられています。 この設計により、ユーザーのプロファイルと関連するすべての出版物が個人のウォレットに安全に保存され、中央集権的なデータベースへの依存から解放されます。さらに、Web3 は、Web2 アーキテクチャよりもユーザーコンテンツと影響力を収益化するためのより簡単なアプローチを提供します。 ユーザーは、フォローNFTのミントに課金したり、コレクトモジュールを出版物に統合したりできます。 後者のオプションでは、出版物のContentURIにリンクされたNFTミントの料金を請求することができます。 これらの機能に加えて、Lens Protocolは、フロントエンドインターフェイスからブロックチェーンコンポーネントをマスキングするためのGraphQL APIも提供し、以前の分散型ソーシャルネットワークよりもユーザーフレンドリーなエクスペリエンスを提供します。最終的に、多くの分散型ソーシャルネットワーキングプロトコルは、ユーザーキーでのみ追加および認証できるデータ構造を作成します。 たとえば、CyberConnect では、ユーザー中心の各データはデータ ストリームとして表され、データ所有者のみが更新を許可されます。 コミットログのみが追加されるため、データが更新されるたびにデータストリームに追加され、結果のデータ構造はマークルDAGと呼ばれるハッシュリンクされたデータ構造になります。 データ型には、コンテンツ、お気に入り、コメント、サブスクリプションなどがあります。Scuttlebutt は、追加専用のログ データ エージェンシーも使用します。 各ユーザーには独自のログがあり、新しいメッセージやアクションは、ユーザーが署名した後、末尾に追加されます。 また、"BLOB" と呼ばれるバイナリ データの共有もサポートしています。 このデータは、画像、ビデオ、またはその他のバイナリ コンテンツにすることができます。 BLOB は追加専用ログとは別に格納されますが、それらの BLOB への参照 (ハッシュ) をログに含めることができます。Farcaster の場合、メッセージはプロフィール写真の投稿、フォロー、追加などの公開更新であり、protobuf としてエンコードされ、アカウント署名者によってハッシュ化および署名される必要があります。 十分なストレージがある限り、ユーザーはハブにメッセージを投稿できます。 HUb は、各メッセージを受け入れる前に、署名者の有効性をチェックします。### ストレージ初期の分散型プロトコルにおけるデータストレージは、主にオフチェーンでした。 たとえば、Scuttlebuttはピアツーピアのゴシップネットワークを使用して、ユーザーのローカルデバイスにデータを保存します。 このアプローチにより、ユーザーは自分の情報を完全に制御できるため、データ主権が確保されます。 ただし、これは、ユーザーのデバイスがオンラインかどうか、またはネットワーク内の別のノードにデータのコピーがあるかどうかによって、データの可用性が異なることも意味します。 時間の経過とともに、一部の Scuttlebutt クライアントでは、ストレージ領域を管理するために、古いデータや関連性の低いデータを削除するガベージ コレクション ポリシーを実装する必要が生じる場合があります。このピアツーピアアプローチの代替案は、データストレージサーバーの出現です。 Matrixの場合、複数のホームサーバーが部屋の履歴のコピーを保存し、それらを相互に同期します。 ユーザーがルームでメッセージ(または任意のイベント)を送信すると、ホームサーバーはイベントを他のホームサーバーにブロードキャストし、イベントを保存して接続しているクライアントに転送します。 同様に、ActivityPub を使用すると、ネットワーク内の各インスタンス (またはサーバー) にデータ (通常はデータベース) を格納できます。 データベース(リレーショナル、NoSQLなど)の選択は、ActivityPubソフトウェアの実装によって異なります。 たとえば、人気のある ActivityPub プラットフォームである Mastodon は、PostgreSQL データベースを使用しています。Cyberconnect、Farcaster、Lensなどのプロトコルは、ストレージにブロックチェーンを採用しています。 オンチェーンストレージは、データの不変性と検証可能性を保証し、基盤となるコンセンサスメカニズムを使用して状態を同期する分散型アプリケーションの強固な基盤を提供します。 しかし、このアプローチでは、各データをオンチェーンで保存する必要があるため、スケーラビリティの課題があり、取引手数料が高くなり、取得時間が遅くなる可能性があります。このため、多くのWeb3ソーシャルプロトコルは、オンチェーンストレージを使用して低頻度の操作(プロファイル、サブスクリプションなど)、オフチェーンストレージを使用して高頻度のイベント(いいね、リツイート、コメントなど)を実行し、オフチェーンストレージを一時的な一時しのぎとして使用してオンチェーンにデータを一括アップロードするハイブリッドアプローチを試みています。ユーザー接続間の頻繁な更新を効率的に処理するために、CyberConnect は分散型データストアでハッシュ化されたリンクリストを採用しています。 接続を開始すると、「操作ログ」が作成されます。 フォロー中とフォロー解除の切り替えなど、その後の状態の変化は、新しいノードとしてこのログに追加されます。 これらのアップデートは、最初は中央のサーバーに保存されますが、ArweaveやFILなどの分散型ストレージプラットフォームに定期的に一括でアップロードされます。 高速なデータ取得を実現するために、操作ログのノードは一元的に保存されます。 ただし、ユーザーは、このハッシュリンクのリストを参照することで、データの整合性を個別に検証できます。 一部のデータクエリは集中型サーバーに依存していますが、CyberConnect のシステムは、高いパフォーマンスを提供しながら、完全に分散されるように設計されています。Farcasterも同様のハイブリッドアプローチを採用しており、オンチェーンコントラクトは、一貫性と分散化にとって重要な低頻度の運用に使用されます。 アカウント、ユーザー名、ストレージ、およびキーは、一連のETH契約を使用して管理されます。 オフチェーンシステムは、パフォーマンスに依存する高頻度の操作に使用されます。 ユーザーアカウントによって作成されたメッセージは、Farcaster ハブのピアツーピアネットワークに保存され、伝搬されます。### ディスカッション分散型ソーシャルプロトコルは、デジタルインタラクションにおけるユーザーエクスペリエンスに革命を起こす可能性を秘めています。 Web3に後押しされ、公開鍵と秘密鍵のペアの採用が加速することで、この文脈におけるアイデンティティプリミティブの理解が深まり、Web2ソーシャルメディア企業による継続的な監査とデータ収集により、より多くのユーザーが他の場所に移動できるようになります。 私たちは、これらの分散型ソーシャルプロトコルの採用曲線が加速すると予想しています。革新的なアプリケーションの開発を促進するために、プロトコル開発者とオープンソースのコントリビューターは、インフラストラクチャ層で現在使用されている基本的なデータ型とリレーショナルオブジェクトを超えることが緊急に必要です。 既存のプリミティブは、従来のWeb2ソーシャルメディアの機能を完全にカプセル化していますが、拡張と革新の大きな可能性を秘めています。 ここで説明するプロトコルのほとんどは、本質的にシステム内のスケーラビリティをサポートし、将来の開発とオープンソースの貢献のための強固な基盤を提供します。ただし、相互運用性も重要です。 フロントエンド開発者は個別に機能を拡張できますが、拡張機能が同じ基盤となるプロトコルで構築された他のアプリケーションと相互運用できない場合、システムの全体的な利点に悪影響を与える可能性があります。 さまざまなアプリケーション間の互換性とシームレスな統合を確保することは、分散型ソーシャルプロトコルの長期的な成功と採用に不可欠です。データストレージの世界では、Web3のソーシャルプロトコルはハイブリッドなアプローチを好む傾向があります。 IDやコンテンツなどの価値の高い資産をオンチェーンプリミティブに割り当て、いいねなどの低リスクコンテンツをオフチェーンソリューションに割り当てるというバランスの取れたアプローチは、重要なデータの整合性とセキュリティを維持するだけでなく、従来のソーシャルメディアプラットフォームに近いユーザーエクスペリエンスを提供します。分散型ネットワークは、人間のコミュニケーション、情報共有、コミュニティ構築を変革することを約束します。 これらのネットワークは、ユーザーの自律性、プライバシー、有機的な関係を育むことを優先することで、より公平でユーザー中心のデジタル環境への道を開いています。 さらに、これらのネットワークの分散型の性質は、情報とリソースへのアクセスを民主化し、集中管理に関連するリスクを軽減するのに役立ちます。
主流の分散型ソーシャルプロトコルを、ID、データ、ストレージの次元から比較します
著者: 1kx
コンパイラ: Luffy, Foresight News
商業的な動機に突き動かされて、企業が管理するソーシャルメディアプラットフォームが出現し、オンラインエンゲージメントの文化に対する当初の希望を大きく損なうようになりました。 オンライン情報技術は、文化的な生産を根本から民主化するはずだが、今日では、これらの利益主導のプラットフォームがオンライン行動を制限し、形作っている - 「いいね」はコンテンツに対する感謝ではなく、商業化のためのツールである。
分散型テクノロジーとフェデレーションプロトコルに基づいて構築された代替ソーシャルメディアプラットフォームは、オンラインソーシャルネットワーキングの元のビジョンを再現します。 データはユーザーによって制御され、分散型データベースに記録され、フロントエンドはコミュニティ主導であり、モデレーションはコミュニティの好みの表現であり、アルゴリズムはユーザーによって選択されます。 これは、イノベーションを推進するオープンソースの精神です。
分散型ソーシャルメディアとオルタナティブソーシャルメディアの歴史
ウェブがビジネス、娯楽、社会的交流のハブになる前は、主に学術や軍事分野のツールでした。 ティム・バーナーズ・リーは、平等主義的なビジョンを持つ最初のネットワークプロトコルを開発しました:インターネットはもともと、情報がノード間を自由に移動できる分散型ネットワークとして設計され、単一の個人が制御したり、単一障害点がなくなったりしました。
しかし、ウェブの商業化が進むにつれて、検索エンジンやソーシャルメディアの巨人などの中央集権的なプラットフォームが支配的になりました。 これらのエンティティは大きな価値を提供する一方で、本来の分散化の精神から逸脱し、現在のWeb2環境につながっています。
代替ソーシャルネットワークの開発における重要な革新は、フェデレーションプロトコルの概念の出現です。 フェデレーションネットワークは、組織がすべてのサーバーを制御する中央集権的なプラットフォームとは対照的に、連携してソーシャルネットワークを形成する独立したサーバーまたは「ノード」のシステムです。
フェデレーテッド・ネットワーク・システムでは、各サーバーは共有プロトコルに従うソフトウェアを実行し、相互に通信できるようにします。 1つのサーバーに登録されたユーザーは、他のサーバー上のユーザーをシームレスにフォローしたり、他のサーバー上のユーザーと対話したり、同じプラットフォームにいるかのようにコンテンツを共有したりできます。 フェデレーション プロトコルの例としては、Mastodon や PeerTube などのフェデレーション プラットフォームをサポートする ActivityPub や OStatus などがあります。
フェデレーテッド・システムの設定では、ユーザーは信頼できるサーバーを選択したり、別のサーバーに移行したり、独自のサーバーを設定したりすることができ、より多くの自律性が与えられます。 「フェディバース」(「連邦」と「コスモス」のかばん語)という用語は、そのようなシステムを説明するために使用されます。 フェディバースはGNU Socialプラットフォームとその前身(StatusnetとLaconica)から始まりましたが、本当のターニングポイントは、2018年にWorld Wide Web Consortium(W3C)によって勧告として公開されたActivityPubプロトコルの開発と普及でした。
Web3では、データがオンチェーンで移植されると、分散型システムのデフォルトの状態はフェデレーションソーシャルネットワークになります。 ブロックチェーンはコンテンツを保存するためのバックエンドサーバーとして機能し、フロントエンドはこのコンテンツにインデックスを付けてユーザーに直接提供します。 IDは、ユーザーのウォレットを管理する公開鍵と秘密鍵のペアに関連付けられているため、ユーザーは生成したデータやコンテンツを簡単に検証できます。 さらに、NFTなどのオンチェーンプリミティブを使用すると、保存されたコンテンツをメタデータにバンドルし、ドメイン名または分散型ID(DID)として機能することができます。
ActivityPub の仕組みと同様に、Web3 プロトコルは、ユーザー ノード間の認証された関係を通じてソーシャル グラフを操作しようとします。 どのフロントエンドでもこのコンテンツをインデックス化して提供できるため、フロントエンド層では激しい競争が繰り広げられ、新機能が盛んに行われています。 さらに、データはオンチェーンに保存されるため、ユーザーは好みのアルゴリズムを選択でき、特定のアルゴリズムを使用してデータの価値を取り戻すようにインセンティブを与えることができます。 これは、より直接的なコンテンツ収益化の手段と相まって、コンテンツがこれらのプラットフォームの需要を喚起しているにもかかわらず、収益化からほとんど排除されてきたクリエイターに、より良い全体的な体験を提供します。
プロトコルの比較
分散型ソーシャルメディアプロトコルの革新を真に理解するには、それらを実装する技術を理解する必要があります。 ここにはすべてのソーシャルプロトコルが含まれているわけではありませんが、最も人気のあるもののいくつかを選択していることは注目に値します。
ID / 名前空間
フェデレーテッドおよび分散型のソーシャルグラフまたはネットワークプロトコルでは、「名前空間」は、ユーザー識別子またはその他のリソースが一意であるドメインです。 これは、あるドメイン/サーバーのリソースまたはIDを別のドメイン/サーバーと区別する方法であり、複数のドメイン間で統合または通信するときに競合やあいまいさがないようにする方法です。
さまざまな分散型ソーシャルプロトコルのIDとアソシエーションの名前空間は、単純なキーペア(Nostr、Sputlebutt)から、管理されたプロファイルを指すURI(ActivityPub)、NFTなどのオンチェーンプリミティブ(最近ではLens V2などのERC-6551拡張機能)の使用まで多岐にわたります。
Farcasterは、これらのテクノロジーの好例です。 Farcaster アカウントは、ネットワーク上で一意のエンティティを表します。 各アカウントには、Farcaster ID (fid) と呼ばれる一意の数値識別子があります。 IDは、IdRegistryと呼ばれるETHコントラクトを使用してオンチェーンで管理され、ユーザーは新しいFIDを取得するためにトランザクションを開始します。 FID を所有するアドレスは、ユーザーの管理アドレスです。 IdRegistry は、アドレス間で fid を転送できること、および 2 つのアドレスが同じ fid を持たないようにします。 また、Farcasterは、この名前空間を拡張して、オンチェーンまたはオフチェーンで公開されているENSドメイン名をサポートしています。 ユーザ名を要求するには、ユーザが署名の証明をネットワークに送信する必要があります。
一方、ActivityPub は、一意の URI (通常は HTTPS URL) で各ユーザーを識別します。 URI はユーザーのプロファイルを指し、Fediverse のグローバル識別子として機能します。 これらの URI をより使いやすくするために、多くの ActivityPub プラットフォームでは Webfinger と呼ばれるシステムを使用しています。 Webfinger では、ユーザーは “@username@domain.com” に似た ID を持つことができます。
LensとCyberConnectは、ユーザープロファイルをNFTとして管理します。 Lensの場合、1つのユーザーアドレスに1つのプロフィールNFTを保有し、1つのアドレスに複数のプロフィールNFTを保有することができます。 各プロフィールNFTは、ユーザーの活動の全履歴をカプセル化しています。 さらに、プロファイルNFTにはFollowModuleがあり、これは基本的に、さまざまなアカウントがFollow NFTを取得する方法を管理する一連のルールです。 これらのフォローNFTは、アカウントとプロファイル間の接続をオンチェーンで直接記録します。 また、プロファイルとは別に作成でき、あるプロファイルから別のプロファイルにリンクしたり、リンクを解除したりできるハンドルもあります。 ハンドルは独自の名前空間 (例: lens/@alice) に存在します。
データ
データの作成と標準化はこれらのシステムの基盤であるため、データは間違いなく分散型ネットワークの最も重要な機能です。 ここでデータを管理する最も一般的な手法は、JSON や一般的なリレーショナル オブジェクト (いいね、フォロワーなど) などの標準化された形式を使用することです。 コア・データ・オブジェクトには、通常、次のものが含まれます。
特定のプロトコルがどのように機能するかを確認するために、いくつかの例に飛び込みましょう。
ActivityPub は、JSON ベースのデータ構造である ActivityStreams 2.0 データ形式を利用して、投稿やいいねなどのさまざまなソーシャル インタラクションを表します。 このプロトコルは、クライアントからサーバー (C2S) とサーバーからサーバー (S2S) の 2 つの主要コンポーネントで構成されています。 C2Sを使用すると、ユーザーはクライアントアプリケーションを介してそれぞれのサーバーと対話できます。 対照的に、S2Sはサーバー間の通信を容易にし、プロトコルの堅牢なフェデレーション性を可能にします。
ActivityPub では、エンティティは “プリンシパル” (通常はユーザー アカウントまたはグループ) と “オブジェクト” (投稿やいいねなどのコンテンツまたはアクション) に分類されます。 サブジェクトがオブジェクトに対してアクションを実行すると、作成、フォロー、いいねなどのアクティブオブジェクトが作成されます。
Web3 ソーシャル グラフは、ActivityPub のコア アイデアの多くを借用していますが、それらをブロックチェーンに適用しています。 たとえば、Lens Protocolは、投稿、ミラー、コメント、その他の形式のメディアなど、さまざまなユーザー生成コンテンツをカプセル化する「パブリケーション」を導入しています。 各パブリケーションは、FILやArweaveなどの分散型プロトコル、またはAWS S3などの集中型ストレージサービスに保存された特定のコンテンツを指すContentURIに関連付けられています。 この設計により、ユーザーのプロファイルと関連するすべての出版物が個人のウォレットに安全に保存され、中央集権的なデータベースへの依存から解放されます。
さらに、Web3 は、Web2 アーキテクチャよりもユーザーコンテンツと影響力を収益化するためのより簡単なアプローチを提供します。 ユーザーは、フォローNFTのミントに課金したり、コレクトモジュールを出版物に統合したりできます。 後者のオプションでは、出版物のContentURIにリンクされたNFTミントの料金を請求することができます。 これらの機能に加えて、Lens Protocolは、フロントエンドインターフェイスからブロックチェーンコンポーネントをマスキングするためのGraphQL APIも提供し、以前の分散型ソーシャルネットワークよりもユーザーフレンドリーなエクスペリエンスを提供します。
最終的に、多くの分散型ソーシャルネットワーキングプロトコルは、ユーザーキーでのみ追加および認証できるデータ構造を作成します。 たとえば、CyberConnect では、ユーザー中心の各データはデータ ストリームとして表され、データ所有者のみが更新を許可されます。 コミットログのみが追加されるため、データが更新されるたびにデータストリームに追加され、結果のデータ構造はマークルDAGと呼ばれるハッシュリンクされたデータ構造になります。 データ型には、コンテンツ、お気に入り、コメント、サブスクリプションなどがあります。
Scuttlebutt は、追加専用のログ データ エージェンシーも使用します。 各ユーザーには独自のログがあり、新しいメッセージやアクションは、ユーザーが署名した後、末尾に追加されます。 また、“BLOB” と呼ばれるバイナリ データの共有もサポートしています。 このデータは、画像、ビデオ、またはその他のバイナリ コンテンツにすることができます。 BLOB は追加専用ログとは別に格納されますが、それらの BLOB への参照 (ハッシュ) をログに含めることができます。
Farcaster の場合、メッセージはプロフィール写真の投稿、フォロー、追加などの公開更新であり、protobuf としてエンコードされ、アカウント署名者によってハッシュ化および署名される必要があります。 十分なストレージがある限り、ユーザーはハブにメッセージを投稿できます。 HUb は、各メッセージを受け入れる前に、署名者の有効性をチェックします。
ストレージ
初期の分散型プロトコルにおけるデータストレージは、主にオフチェーンでした。 たとえば、Scuttlebuttはピアツーピアのゴシップネットワークを使用して、ユーザーのローカルデバイスにデータを保存します。 このアプローチにより、ユーザーは自分の情報を完全に制御できるため、データ主権が確保されます。 ただし、これは、ユーザーのデバイスがオンラインかどうか、またはネットワーク内の別のノードにデータのコピーがあるかどうかによって、データの可用性が異なることも意味します。 時間の経過とともに、一部の Scuttlebutt クライアントでは、ストレージ領域を管理するために、古いデータや関連性の低いデータを削除するガベージ コレクション ポリシーを実装する必要が生じる場合があります。
このピアツーピアアプローチの代替案は、データストレージサーバーの出現です。 Matrixの場合、複数のホームサーバーが部屋の履歴のコピーを保存し、それらを相互に同期します。 ユーザーがルームでメッセージ(または任意のイベント)を送信すると、ホームサーバーはイベントを他のホームサーバーにブロードキャストし、イベントを保存して接続しているクライアントに転送します。 同様に、ActivityPub を使用すると、ネットワーク内の各インスタンス (またはサーバー) にデータ (通常はデータベース) を格納できます。 データベース(リレーショナル、NoSQLなど)の選択は、ActivityPubソフトウェアの実装によって異なります。 たとえば、人気のある ActivityPub プラットフォームである Mastodon は、PostgreSQL データベースを使用しています。
Cyberconnect、Farcaster、Lensなどのプロトコルは、ストレージにブロックチェーンを採用しています。 オンチェーンストレージは、データの不変性と検証可能性を保証し、基盤となるコンセンサスメカニズムを使用して状態を同期する分散型アプリケーションの強固な基盤を提供します。 しかし、このアプローチでは、各データをオンチェーンで保存する必要があるため、スケーラビリティの課題があり、取引手数料が高くなり、取得時間が遅くなる可能性があります。
このため、多くのWeb3ソーシャルプロトコルは、オンチェーンストレージを使用して低頻度の操作(プロファイル、サブスクリプションなど)、オフチェーンストレージを使用して高頻度のイベント(いいね、リツイート、コメントなど)を実行し、オフチェーンストレージを一時的な一時しのぎとして使用してオンチェーンにデータを一括アップロードするハイブリッドアプローチを試みています。
ユーザー接続間の頻繁な更新を効率的に処理するために、CyberConnect は分散型データストアでハッシュ化されたリンクリストを採用しています。 接続を開始すると、「操作ログ」が作成されます。 フォロー中とフォロー解除の切り替えなど、その後の状態の変化は、新しいノードとしてこのログに追加されます。 これらのアップデートは、最初は中央のサーバーに保存されますが、ArweaveやFILなどの分散型ストレージプラットフォームに定期的に一括でアップロードされます。 高速なデータ取得を実現するために、操作ログのノードは一元的に保存されます。 ただし、ユーザーは、このハッシュリンクのリストを参照することで、データの整合性を個別に検証できます。 一部のデータクエリは集中型サーバーに依存していますが、CyberConnect のシステムは、高いパフォーマンスを提供しながら、完全に分散されるように設計されています。
Farcasterも同様のハイブリッドアプローチを採用しており、オンチェーンコントラクトは、一貫性と分散化にとって重要な低頻度の運用に使用されます。 アカウント、ユーザー名、ストレージ、およびキーは、一連のETH契約を使用して管理されます。 オフチェーンシステムは、パフォーマンスに依存する高頻度の操作に使用されます。 ユーザーアカウントによって作成されたメッセージは、Farcaster ハブのピアツーピアネットワークに保存され、伝搬されます。
ディスカッション
分散型ソーシャルプロトコルは、デジタルインタラクションにおけるユーザーエクスペリエンスに革命を起こす可能性を秘めています。 Web3に後押しされ、公開鍵と秘密鍵のペアの採用が加速することで、この文脈におけるアイデンティティプリミティブの理解が深まり、Web2ソーシャルメディア企業による継続的な監査とデータ収集により、より多くのユーザーが他の場所に移動できるようになります。 私たちは、これらの分散型ソーシャルプロトコルの採用曲線が加速すると予想しています。
革新的なアプリケーションの開発を促進するために、プロトコル開発者とオープンソースのコントリビューターは、インフラストラクチャ層で現在使用されている基本的なデータ型とリレーショナルオブジェクトを超えることが緊急に必要です。 既存のプリミティブは、従来のWeb2ソーシャルメディアの機能を完全にカプセル化していますが、拡張と革新の大きな可能性を秘めています。 ここで説明するプロトコルのほとんどは、本質的にシステム内のスケーラビリティをサポートし、将来の開発とオープンソースの貢献のための強固な基盤を提供します。
ただし、相互運用性も重要です。 フロントエンド開発者は個別に機能を拡張できますが、拡張機能が同じ基盤となるプロトコルで構築された他のアプリケーションと相互運用できない場合、システムの全体的な利点に悪影響を与える可能性があります。 さまざまなアプリケーション間の互換性とシームレスな統合を確保することは、分散型ソーシャルプロトコルの長期的な成功と採用に不可欠です。
データストレージの世界では、Web3のソーシャルプロトコルはハイブリッドなアプローチを好む傾向があります。 IDやコンテンツなどの価値の高い資産をオンチェーンプリミティブに割り当て、いいねなどの低リスクコンテンツをオフチェーンソリューションに割り当てるというバランスの取れたアプローチは、重要なデータの整合性とセキュリティを維持するだけでなく、従来のソーシャルメディアプラットフォームに近いユーザーエクスペリエンスを提供します。
分散型ネットワークは、人間のコミュニケーション、情報共有、コミュニティ構築を変革することを約束します。 これらのネットワークは、ユーザーの自律性、プライバシー、有機的な関係を育むことを優先することで、より公平でユーザー中心のデジタル環境への道を開いています。 さらに、これらのネットワークの分散型の性質は、情報とリソースへのアクセスを民主化し、集中管理に関連するリスクを軽減するのに役立ちます。