メインコンテンツまでスキップ

Bitsocial と ActivityPub

ActivityPub は、Fediverse を支える W3C 標準です。利用者はインスタンスと呼ばれるサーバーを選び、そこに自分のアカウントをホストしてもらいます。サーバー同士は互いに投稿をやり取りします。Mastodon はその代表的なマイクロブログソフトウェアです。Lemmy はトピックごとのコミュニティで構成される Reddit 型のリンクアグリゲーター兼フォーラムで、Seedit のような Bitsocial アプリに Fediverse の中で最も近い存在です。

ActivityPub の仕組み​

  • 受信箱と送信箱。 各アカウントには受信箱 (inbox) と送信箱 (outbox) があります。サーバーはアクティビティを他のサーバー上の受信箱へ届け、受信側の各サーバーは自分の利用者がフォローしているものの独自のコピーを保存します。
  • サーバーが所有するアイデンティティ。 アカウントと投稿の ID は、発信元サーバーのドメイン上の HTTPS アドレスです。Mastodon のハンドルは @user@domain の形で、WebFinger で解決され、サーバーが利用者に代わってフェデレーションのメッセージに署名します。
  • クライアント。 アプリやブラウザは、利用者自身のサーバーとだけ、そのサーバーの API を通じて通信します。
  • Lemmy のコミュニティ。 コミュニティは、1 つのインスタンス上にホストされるグループアクターです。利用者が投稿をコミュニティへ送ると、コミュニティはそれをフォロワーに再配信します。共通のフォーラム標準 (FEP-1b12) では、コミュニティは先に投稿を検証することができ、モデレーターによる手動承認まで行えます。
  • モデレーション。 モデレーションは各サーバー内で完結します。管理者はアカウントを停止したり、サーバーをまるごとブロックしたり、許可リストに載ったサーバーとだけフェデレーションしたりできます。Lemmy には、コミュニティごとのモデレーターもいます。
  • スパム対策。 ActivityPub はスパム対策の仕組みを定義していません。Mastodon と Lemmy は、承認、招待、登録時の質問、CAPTCHA、メール確認によって登録を制限し、その後はレート制限、通報、モデレーションに頼ります。

どこが違うのか​

アイデンティティはドメインに属する​

Fediverse のアカウントは、そのサーバーのドメインに属します。Mastodon ではフォロワーを新しいアカウントへ移すことはできますが、投稿は移せず、移行は元のサーバーから始める必要があり、30 日間のクールダウンもあります。Bitsocial では、プロフィールもコミュニティも鍵ペアなので、ホストやアプリを変えてもアイデンティティは変わりません。アイデンティティとコミュニティの所有権 を参照してください。

コミュニティがどこにあるか​

Lemmy のコミュニティは、構造的には Bitsocial のコミュニティに近いものです。投稿はコミュニティへ送られ、コミュニティは再配信の前にそれを確認できます。違いは、コミュニティがどこにあるかです。Lemmy のコミュニティは作成者のホームインスタンスにしか作れず、インスタンスの管理者がそれを 完全に掌握しており、別のインスタンスへ移す方法は文書化されていません。Bitsocial のコミュニティはそれ自体が鍵ペアです。所有者はそのノードをどこででも動かせ、上に立つサーバー管理者はいません。

スパム対策​

Fediverse のサーバーは、主に登録の段階でスパムを止め、その後はモデレーションで対処します。Bitsocial のコミュニティは、すべての投稿に対して受理する前にチャレンジを実行し、そのチャレンジは CAPTCHA、許可リスト、支払い、その他任意のコードなど、各コミュニティが自ら選びます。カスタムのスパム対策チャレンジ を参照してください。

インフラの運用​

インスタンスを運用するには、ドメイン、TLS、メールを備えた常時稼働のサーバーが必要です。Mastodon にはさらに PostgreSQL、Redis、バックグラウンドワーカーが必要です。Lemmy はもっと軽く、本家の数字によれば RAM は約 150 MB です。各インスタンスは、自分の利用者がフォローしているリモートのコンテンツのコピーを保存します。Bitsocial のコミュニティノードはドメインも証明書も必要とせず、デスクトップアプリや bitsocial-cli から動かせます。

サーバーが見返りに提供するもの​

Fediverse のサーバーは完全な履歴を保持して確実に配信し、Mastodon には長年かけて育ってきた成熟したモデレーションツールがあります。Bitsocial は古いコンテンツを永久に保証するわけではなく、モデレーションツールはそれぞれのアプリの中にあります。

比較​

論点ActivityPub (Mastodon, Lemmy)Bitsocial
分類フェデレーション型のサーバー群ピアツーピアのコミュニティネットワーク
アイデンティティサーバーのドメイン上のアカウント。署名はサーバーが行う利用者とコミュニティの Ed25519 鍵ペア
投稿の保存場所発信元のサーバーと、フォローしている各サーバー上のコピーコミュニティ所有者のノードと、そのコミュニティを読んでシードするピア
誰が公開を維持するかインスタンスの管理者コミュニティ所有者のノードと補助のシーダー
コミュニティ1 つのインスタンスにホストされる Lemmy のコミュニティ自身のノードが投稿を受理または拒否する第一級のオブジェクト
スパム対策登録時の関門、レート制限、通報、モデレーション投稿が受理される前に課される、各コミュニティのチャレンジ
モデレーションサーバー管理者とコミュニティのモデレーター。各サーバー内で完結コミュニティ所有者が自分のコミュニティをモデレートし、何を表示するかはアプリが選ぶ
名前@user@domain と !community@domain のハンドル鍵に解決される .bso と .eth の名前
ブラウザ利用者自身のサーバーのクライアント通常のブラウザタブ内で動くピアツーピアノード
主なトレードオフ履歴が確実でモデレーションも成熟しているが、アイデンティティとコミュニティはサーバーに属するサーバーもドメインも不要だが、古いコンテンツが永続する保証はない