Pocket Wallet 是一款基于 Nostr 账户的 CKB 钱包。它通过 CKB 轻客户端直接在浏览器中同步区块链数据,无需依赖任何中心化的 RPC 服务。通过整合 CKB 轻客户端和包括 Nip46 在内的 Nostr 协议,我们试图在客户端验证与 POW 的框架下,打造完全可验证的钱包体验。这也是一个开源的项目,目前还只支持测试网,欢迎任何形式的反馈。
这也是我从零构建 Web5 产品的一次尝试,想要探索 Web5 技术理念的设计与实现。在这次的开发过程中我有一些有趣的发现和思考,顺便分享一些:
-
我觉得无论是用户还是开发者,其实都在渴望产品能摆脱未来可能出现的额外的维护/使用成本、审核流程或准入门槛。
-
这一点对开发者来说,在构建 Web5 产品时,需要更多地考虑维护成本。要让产品在未来尽可能长的时间里继续工作,就必须尽可能减少产品需要的依赖。
-
服务器是不好的,因为本质上服务器是需要依赖别人控制的电脑。客户端验证是好的,因为你依赖自己能够控制的电脑。
-
这也是为什么轻客户端与 POW 对区块链来说很重要,只有它们能让你在自己的电脑上自主做验证。"don’t trust,verify"不仅仅只是一句口号,也是更现实的技术策略,如果你从长远角度来看的话。中心化服务往往开局惊艳,却在未来埋下隐患。
-
如果你的产品真的必须要依赖外部服务,那么应该尽量去选择简单、开放的协议而非私有软件。比如在 PocketWallet 里使用 Nip46 来管理 Nostr 账户,一个好处是协议足够简单,即使所有 Nip46 服务商停运或者封禁你,你也可以很轻松地自建或找到替代品。
-
事实上我觉得 Nostr 生态的妙处在于几乎所有服务/产品都具备可切换、可替代、可自建的特性,这是其作为简单的开放协议的魅力。这也是为什么在 PocketWallet 里选择 Nostr 作为某种 Web2 用户界面的形式,与 web3 的区块链进行连接(它们加在一起组合出 Web5,没错!)
-
对于用户来说,有 power user 和 weak user。power user 完全具备自主能力,他们缺乏的是趁手的工具能够给予他们更多的权利和自由,去发挥出自己的能力。原因在于 power user 几乎在所有市场中都是少数群体。所以没有产品专门为他们而建。我们需要更多 Web5 产品将权利(以及对应的责任)从开发者身上转移给这些 power user。
-
weak user 完全具备自主能力,但他们长期被灌输"你没有"的谎言,并且相信了这个谎言。一个最简单的例子是,在使用 Nostr 账户管理工具时(无论是 Nip46 还是 Nip07),你是选择让工具帮你自动签署大部分数据还是每一笔签名都会自己验证一下再同意签名?自动签名对区块链来说几乎总是危险的。
-
Web5 应该提供不同层级的信任方案,开放不同级别的验证工具,给不同的用户。只有这样,power user 才能充分施展自己的能力,同时 weak user 才有机会从中识破"托管即安全"的迷思。我们需要 Web5 来重建数字个体主权。