Bitsocial 与 Lapis Net
Lapis Net 是一个用 Kotlin 为 JVM 编写的点对点社交网络协议。它独立地走到了与 Bitsocial 相近的基础之上:基于密钥对的身份、IPFS 式的内容存储,以及 libp2p gossipsub。两者的分歧在于把垃圾信息过滤和内容策展放在哪里。Lapis 给每位查看者一张个人信任图,并允许 Bitcoin 和 Lightning 付款提升可见度;Bitsocial 则让每个社区决定什么内容可以发布。
Lapis 是一个可运行的原型。据其代码仓库,截至 2026 年 10 月,它还没有公共网络,连接两个节点需要手动操作。
Lapis 的工作原理
- 身份。 每个身份都是一个与 Bitcoin 密钥兼容的 secp256k1 密钥对,并绑定一把 Ed25519 密钥用作 libp2p 对等点 ID。
- 存储与传播。 内容通过 Nabu 存储,Nabu 是基于 libp2p 的 IPFS 实现(DHT 和 Bitswap),内容再通过 libp2p gossipsub 传播。
- 评分。 在一个对策展保持中立的核心之上,有四项可选评分:
- Veritas,根据每位查看者自己的信任图计算出的信任网络
- Virtus,由会随时间衰减的链上或 Lightning 付款证明支撑的可见度
- Karma,按 Veritas 加权的免费点赞
- Madli,节点之间就彼此行为记录的声誉分
- 消息。 端到端加密的私信、一对一语音通话,以及类似电子邮件的异步消息系统都是该项目的一部分。
- 客户端。 每个用户运行一个 JVM 节点。参考客户端是由这个本地节点提供的网页界面。
两者的区别
由谁过滤垃圾信息
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 节点提供的本地网页界面 | 普通浏览器标签页中的点对点节点 |
| 网络 | 尚无公共网络的原型 | 已上线的网络,拥有 5chan 和 Seedit 等应用 |
| 主要取舍 | 内置丰富的声誉和消息功能,但尚无公共网络 | 核心更小、能在浏览器中运行,但没有内置声誉或私信 |
它们能协同工作吗?
Bitsocial 挑战可以是任意代码,因此 Lapis 式的信任分也可以成为一种挑战。内置的 whitelist 挑战已经能从 URL 读取允许地址列表。一个服务如果发布某个 Veritas 信任图所信任的 Bitsocial 地址,就能让这些作者在某个社区中免做 CAPTCHA。这需要一种把 Lapis 身份关联到 Bitsocial 地址的方法,而目前还没有类似的东西。