AT Protocolのドキュメントを翻訳しながら読みたい
翻訳はDeepLくん
Authenticated Transfer Protocol、別名atprotoは、大規模な分散型ソーシャル・アプリケーションのための連携プロトコルである。この文書では、ATプロトコルの背後にある考え方を紹介する。
アイデンティティ
ユーザーはATプロトコル上のドメイン名で識別される。これらのドメインは、ユーザーのアカウントとそのデータを保護する暗号URLにマッピングされる。
https://gyazo.com/76727fc60609de6a00ff33370925d2b1
データ・リポジトリ
ユーザーデータは署名されたデータリポジトリで交換される。これらのリポジトリは、投稿、コメント、「いいね!」、フォロー、メディアブロブなどを含むレコードのコレクションである。
https://gyazo.com/43dc52a2b5332d94f97445b5548d858b
連盟
ATプロトコルは、フェデレーション・ネットワーキング・モデルでリポジトリを同期させる。フェデレーションは、ネットワークの利便性と信頼性を確保するために選択された。リポジトリ・データは、標準的なウェブ技術(HTTPとウェブソケット)を介してサーバー間で同期される。 私たちのネットワークの3つのコア・サービスは、パーソナル・データ・サーバー(PDS)、ビッグ・グラフ・サービス(BGS)、アプリ・ビューです。また、フィード・ジェネレーターとラベラーにも取り組んでいる。
下位レベルのプリミティブは、リポジトリ、辞書、DIDです。私たちは、フェデレーション・アーキテクチャに関する技術的決定の概要をブログで発表した。 相互運用
Lexicon(レキシコン)と呼ばれるグローバルなスキーマネットワークは、サーバー間でコールの名前と動作を統一するために使用される。サーバーは、ユーザーリポジトリを同期するためのコアATPレキシコンや、基本的なソーシャル動作を提供するためのBskyレキシコンなど、機能セットをサポートするための「レキシコン」を実装する。
https://gyazo.com/9612be2a0dcfb074471b30eb444b00de
ウェブが文書を交換するのに対して、ATプロトコルは図式と意味情報を交換し、異なる組織のソフトウェアが互いのデータを理解できるようにする。これにより、アットプロト・クライアントはサーバーに依存せずにユーザー・インターフェースを自由に作成できるようになり、コンテンツの閲覧中にレンダリング・コード(HTML/JS/CSS)を交換する必要がなくなる。
規模の拡大
パーソナル・データ・サーバーは、クラウド上のあなたの家です。あなたのデータをホストし、配信し、あなたのアイデンティティを管理し、他のサービスへのリクエストをオーケストレーションして、あなたのビューを提供する。
ビッググラフ・サービス(BGS)は、大規模なメトリクス(いいね!、リポスト、フォロワー)の取得、コンテンツ・ディスカバリー(アルゴリズム)、ユーザー検索など、あらゆるイベントを処理する。
https://gyazo.com/eea2604028febd9083bc18d01e19306b
この区別は、規模を拡大すると同時に、ユーザーの高度な選択を実現することを意図している。
アルゴリズムによる選択
ウェブ検索エンジンと同様に、ユーザーは自由にアグリゲーターを選択できる。フィード、アプリビュー、検索インデックスは、独立したサードパーティによって提供され、ユーザー設定に基づいてPDSによってリクエストがルーティングされる。
https://gyazo.com/0351fff5f6d2195dfba634e5f50e36ba
アカウント・ポータビリティ
パーソナル・データ・サーバーは、その全体がオフラインになったり、特定のユーザーに対するサービスが停止したりすることで、いつでも故障する可能性があると想定しています。ATプロトコルの目標は、ユーザーがサーバーの関与なしに新しいPDSにアカウントを移行できるようにすることである。
ユーザー・データは署名されたデータ・リポジトリに保存され、DIDによって検証される。署名付きデータ・リポジトリーはGitリポジトリのようなものだが、データベース・レコードのためのものであり、DIDは基本的にユーザー証明書のレジストリであり、TLS証明書システムに似ているところがある。DIDは、安全で信頼性が高く、ユーザーのPDSから独立していることが期待されている。
https://gyazo.com/a6067bcfe4165ef8b556cc0cc8e83904
各DID文書は、署名鍵と回復鍵の2つの公開鍵を公表する。
署名鍵: DID Documentとユーザーのデータ・リポジトリに対する変更を証明する。
リカバリ鍵: 72時間以内に署名鍵を上書きすることができる。
署名鍵はPDSが利用者のデータを管理できるようにPDSに委託されるが、回復鍵は紙鍵などとして利用者が保存する。これにより、ユーザーは元のホストの手を借りずに新しいPDSにアカウントを更新することができる。
https://gyazo.com/849262cc760446639b3ef1f599bd9396
ユーザーのデータのバックアップは、バックアップとしてクライアントに永続的に同期されます(利用可能なディスク容量によります)。PDSが予告なく消滅した場合、ユーザーはDIDドキュメントを更新し、バックアップをアップロードすることで、新しいプロバイダーに移行できるはずです。
スピーチ、リーチ、モデレーション
Atprotoのモデルは、スピーチとリーチは2つの独立したレイヤーであるべきで、互いに機能するように構築されているというものだ。「スピーチ」レイヤーは寛容であるべきで、権威を分散し、誰もが発言できるように設計されている。「リーチ」レイヤーはその上にあり、柔軟で拡張可能であるように設計されている。
https://gyazo.com/75d1c465cbeb9835b2f3de6cc1399f51
アットプロトのベースレイヤー(個人データ・リポジトリとフェデレート・ネットワーキング)は、誰もが自由に参加できる言論のための共有スペースを作り上げる。そして、インデックス・サービスは、検索エンジンに例えられるように、ネットワークからコンテンツを集約することでリーチを可能にする。
仕様
ATプロトコルの初期バージョンを構成する主な仕様には次のようなものがある:
認証転送プロトコル
DIDとハンドル
リポジトリとデータモデル
辞書
HTTP API(XRPC)とイベント・ストリーム
これらのスペックは、依存関係の3つのレイヤーに整理することができる:
https://gyazo.com/6935e76b4edef1f445ffb8d14624b408
ここから、ガイドとスペックを読み進めることができる。