Bitsocial と Lapis Net
Lapis Net は、JVM 向けに Kotlin で書かれたピアツーピアのソーシャルネットワークプロトコルです。Bitsocial とは独立に、鍵ペアによるアイデンティティ、IPFS 型のコンテンツ保存、libp2p の gossipsub という、Bitsocial に近い基盤にたどり着きました。両者の違いは、スパムのフィルタリングとキュレーションをどこに置くかです。Lapis は閲覧者一人ひとりに個人的な信頼グラフを与え、Bitcoin や Lightning での支払いによって可視性を高められるようにしています。Bitsocial は、何を公開してよいかを各コミュニティに決めさせます。
Lapis は動作するプロトタイプです。その リポジトリ によれば、2026 年 10 月の時点ではまだ公開ネットワークがなく、2 つのノードをつなぐには手作業が必要でした。
Lapis の仕組み
- アイデンティティ。 各アイデンティティは Bitcoin の鍵と互換性のある secp256k1 鍵ペアで、libp2p のピア ID 用に Ed25519 鍵が結び付けられています。
- 保存と伝播。 コンテンツは、libp2p 上の IPFS 実装である Nabu (DHT と Bitswap) で保存され、libp2p の gossipsub で広められます。
- スコアリング。 キュレーションに対して中立を保つコアの上に、任意の 4 つのスコアが載ります。
- Veritas: 各閲覧者自身の信頼グラフから計算される Web of Trust
- Virtus: 時間とともに減衰する、オンチェーンまたは Lightning の支払い証明に裏付けられた可視性
- Karma: Veritas で重み付けされる無料のいいね
- Madli: ノード同士が互いのふるまいについて保持する評判スコア
- メッセージング。 エンドツーエンド暗号化されたダイレクトメッセージ、1 対 1 の音声通話、電子メールのような非同期メッセージシステムもプロジェクトに含まれています。
- クライアント。 利用者はそれぞれ JVM ノードを動かします。リファレンスクライアントは、そのローカルノードが配信する Web インターフェースです。
どこが違うのか
誰がスパムをフィルタリングするか
Lapis は閲覧者の側でフィルタリングします。コンテンツはまず伝播し、そのあと各閲覧者の信頼グラフと、閲覧者が使うアプリの支払いルールによって、何が表に出るかが決まります。Bitsocial はコミュニティの側でフィルタリングします。投稿はコミュニティのノードに受理される前にコミュニティのチャレンジを通過しなければならないため、拒否されたスパムがコミュニティの一部になることはありません。カスタムのスパム対策チャレンジ を参照してください。
誰が権限を持つか
Lapis では、誰を信頼するかを各閲覧者が決め、有料の可視性がどう機能するかを各アプリの運営者が決めます。Bitsocial では、コミュニティ所有者がそのコミュニティだけのルールを決め、何を表示するかはアプリが選びます。どちらにも、プロトコルレベルの管理者はいません。
経済
Lapis は、Bitcoin と Lightning の支払い証明を可視性スコアに組み込んでいます。Bitsocial のプロトコルには支払いの層がなく、コミュニティはチャレンジを通じて支払いやトークンを求めることができます。
ブラウザ
Bitsocial のアプリは、通常のブラウザタブの中でピアツーピアノードを動かせます。ブラウザ ピアツーピア を参照してください。Lapis のブラウザインターフェースは、利用者の JVM ノードが配信するローカルページです。
対象範囲
Lapis はダイレクトメッセージ、音声通話、メールをひとまとめにしています。Bitsocial は公開コミュニティに焦点を当てており、ネイティブのダイレクトメッセージはまだありません。
比較
| 論点 | Lapis Net | Bitsocial |
|---|---|---|
| 分類 | ピアツーピアのソーシャルプロトコル (プロトタイプ) | ピアツーピアのコミュニティネットワーク |
| アイデンティティ | Ed25519 のピア ID を結び付けた secp256k1 鍵ペア | 利用者とコミュニティの Ed25519 鍵ペア |
| 投稿の保存場所 | 参加ノード上の Nabu (libp2p 上の IPFS) ストレージ | コミュニティ所有者のノードと、そのコミュニティを読んでシードするピア |
| コミュニティ | コミュニティオブジェクトはなく、キュレーションは閲覧者ごと、アプリごとに行われる | 自身のノードが投稿を受理または拒否する第一級のオブジェクト |
| スパム対策 | 閲覧者の信頼グラフ、有料の可視性、最初のメッセージに対する Lightning のデポジット | 投稿が受理される前に課される、各コミュニティのチャレンジ |
| モデレーション | 各閲覧者の信頼グラフ。有料の可視性のルールはアプリ運営者が決める | コミュニティ所有者が自分のコミュニティをモデレートし、何を表示するかはアプリが選ぶ |
| 経済 | スコアリングに Bitcoin と Lightning の支払い証明 | プロトコルにはない。チャレンジで支払いやトークンを求めることは可能 |
| ブラウザ | JVM ノードが配信するローカルの Web インターフェース | 通常のブラウザタブ内で動くピアツーピアノード |
| ネットワーク | 公開ネットワークのないプロトタイプ | 5chan や Seedit などのアプリが動く稼働中のネットワーク |
| 主なトレードオフ | 評判とメッセージングの機能が豊富に組み込まれているが、公開ネットワークはまだない | ブラウザで動く小さなコアだが、評判や DM の機能は組み込まれていない |
連携できるか?
Bitsocial のチャレンジは任意のコードなので、Lapis 型の信頼スコアをチャレンジにすることもできます。組み込みの whitelist チャレンジは、すでに URL から許可アドレスの一覧を読み込めます。Veritas グラフが信頼する Bitsocial アドレスを公開するサービスがあれば、そうした投稿者がコミュニティで CAPTCHA を省略できるようにすることも可能です。そのためには Lapis のアイデンティティを Bitsocial のアドレスに結び付ける方法が必要ですが、そうした仕組みは現在存在しません。