Nervina Labs 首席执行官兼创始人 Cipher 在 3 月 29 日美东时间在 Nervos Reddit 开启英文AMA 。主题为 JoyID ,这是一款革命性的加密钱包,它在 Nervos CKB 上实现了无密码、非托管且完全去中心化的特性。
过去四年,Nervina Labs 一直在为 Nervos Network 构建基础设施和产品。他们已成功构建了 NFT 平台 Token.city、CoTA 标准。JoyID 是一款用户友好型加密钱包,让用户仅通过指纹或 FaceID 就能轻松控制加密货币。以下内容为本次 AMA 整理稿,翻译为中文,有部分删改,具体以原文为准。
Q1:你认为 Nervina Labs、Nervos Network 和整个区块链行业面临最大的障碍是什么?另外,你认为普通人需要什么才能利用区块链,而不是陷入骗局式投资?虽然这些问题与 Nervina Labs 工作没有直接关系,但我认为像您这样的行业领袖对当前行业状况的看法具有很高的价值。
A:自从 2016 年进入区块链行业以来,我一直致力于让更多普通用户从区块链的价值网络中受益,享受平等和自由。在 Nervina Labs,我的主要工作是思考非技术爱好者如何更容易地使用区块链,以及如何以最低的学习曲线和成本吸引用户。在 Nervos Foundation,我的工作是设计应用层协议以支持这些产品。我必须承认这些任务非常具有挑战性,但我很高兴地说我们已经取得了一些成果。特别是我们的产品 JoyID 钱包,为数十亿普通用户打开了区块链的大门。关于如何让普通人将区块链视为资源,而不是骗局式投资,我认为需要更多的教育和普及,以及更多安全、易用和有用的应用程序的出现,让人们真正意识到区块链技术的价值和潜力。
Q2:请简要介绍以及它的开发阶段,它是否已准备好投入生产?JoyID 是一个真正的钱包/应用程序,还是只是为其他钱包提供商提供工具包?还是两者兼具?据了解,恢复钱包需要使用生物识别信息(如面部或指纹),但仅限于同一设备。这意味着他人无法用另一台设备的生物识别信息恢复我的钱包,这固然是好事,但如果设备丢失了,如何恢复钱包呢?
A:CoTA 是一种运行在 Nervos CKB 上的超低成本代币协议,仅需 32 CKBytes 的状态存储成本便能铸造数百万个 NFT。此外,CoTA 还可作为第三方 dapps 的通用 on-chain key-value 存储数据库。JoyID 利用 CoTA 管理抽象账户。
您可以在此处找到有关 CoTA 的更多信息:https://www.cotadev.io/docs/protocols/cota_main
CoTA 已准备好投入生产,目前已有一些 dapps 和应用在主网上使用它,例如免费 NFT 铸造和分发平台 NFTBox.me 和 NFT 钱包 token.city。JoyID 是一个基于网页的钱包,允许您管理在 Nervos CKB 和 L2 链上的资产。同时,它还是一个 on-chain 工具包和智能合约。任何人都可以复制我们的开源代码并部署网页以提供相同的服务,实现完全去中心化。
Q3:JoyID 是 Nervos 独有的产品吗?它是否仅限于在 Nervos 网络上开发?
A:是的,JoyID 专为 Nervos 的 L1 和 L2 设计,只能在这些网络上使用。在 Nervos 的 L2 网络 Axon 上,您可以像使用 EOA 账户一样使用 JoyID。Nervos 提供了两个关键功能以支持 JoyID。首先,它提供完整的账户抽象支持,使 JoyID 能够将多个设备的 webauthn 密钥作为相同地址的签名验证机制。其次,高效的 RISC-V 虚拟机确保了 webauthn 签名验证的实际成本可行性。虽然还有一些其他链,如 StarkNet 或 Fuel,也在尝试类似的实现,但它们的技术进度相对落后,尚未准备好投入生产。
Q4:JoyID 是一个将在 Web2 应用商店上线的应用程序,还是更像 ckb.pw?
A:目前,JoyID 钱包是一个基于网页的应用程序,类似于 ckb.pw。我们可能会构建一个原生应用程序来提供更多功能,包括通知、nfc 访问等。但它现在不在我们的路线图上。
Q5:请解释一下 JoyID 中生物识别认证过程的工作原理以及采取了哪些措施来确保用户的隐私和安全?
A:生物识别认证过程由 FIDO 维护的 WebAuthn API 提供。JoyID 不会直接访问您的生物识别信息,这在技术上是不可能的。相反,JoyID 通过 WebAuthn API 请求非对称身份验证,并触发系统的生物识别传感器进行验证。因此,您的系统(Windows/MacOS/Android/iOS)负责进行生物认证,而 JoyID 仅获取签名和公钥。公钥具有高熵且完全随机,无法用于追踪您的设备和个人信息。
Q6:JoyID 如何确保私钥永远不会离开用户的设备,如果用户丢失了设备会发生什么?
A:私钥的安全性由使用的硬件保证。FIDO/WebAuthn 标准利用硬件的 Secure Enclave 生成、存储和处理私钥,它们被设计为无法导出。即使是制造商,也无法获取这些私钥。
若设备丢失,您可以采取以下两个措施:1) 在新设备上恢复您的账户;2) 远程删除旧设备的身份验证。JoyID 协议和前端应用程序都支持这两项操作。
Q7:能否解释一下 JoyID 中的社交恢复功能如何运作以及如何实现去中心化的账户恢复?
A:JoyID 提供了账户抽象化,使您能够在多个设备上“登录”同一账户。这意味着您可以将多个设备(如手机、笔记本或 PC)生成的公钥链接到一个账户。即使您丢失了其中一个设备,也可以使用其他设备访问您的账户。此外,您还可以将 Metamask 地址绑定到账户,并使用 Metamask 钱包或助记词来恢复账户。
社交恢复功能允许您指定多个好友的 JoyID 地址作为恢复监护人。若您失去所有设备,无法自行恢复账户,可以在新设备上启动社交恢复流程。首先,在 JoyID 钱包中使用旧账户/地址登录,系统将提示您设备上没有有效密钥。然后,通过将恢复链接发送给好友来获取他们的批准(签名),开始社交恢复过程。收集到足够签名后,您可以将新设备生成的密钥添加到旧账户。此后,新设备便可控制您的账户。整个过程无需依赖中心化方案。
Q8:能否讨论一下 JoyID 如何利用 Nervos CKB 区块链上的 CoTA 扩展来注册公钥并完成用户地址抽象的技术细节?
A:CoTA 提供了一个“用户数据扩展”功能,允许第三方脚本通过 SMT 数据累加器以键值格式访问其脚本范围数据。这意味着 JoyID 脚本可以将抽象账户数据(如多个子密钥或社交恢复设置数据)存储到 CoTA 单元中,无需产生额外的 CKBytes 成本。所有数据都通过 CoTA 协议存储在一个 32 字节的 SMT 根目录中。虽然文档网页上的扩展详细信息尚未更新,但您可以参考:https://www.cotadev.io/docs/protocols/cota_userdata 了解更多。
Q9:请问 JoyID 是如何管理用户配置文件并将其以 CTmeta 格式存储在链上的?为确保数据隐私和安全,采取了哪些措施?
A:在 JoyID 的早期设计阶段,我们在标准中加入了用户画像字段,将其作为 Nervos 的“身份层”。但后来,我们认为 JoyID 更适合作为类似于 Metamask 的大规模采用版本,专注于账户而非身份。因此,在最新设计中,我们不再将用户资料上链。
尽管如此,我们仍在链上存储其他可能泄露用户隐私的信息,如 WebAuthn 的自定义设备标签和关键索引。我们将这些数据存储在 CKB 交易的 witness 字段中,并采用 CTMeta 标准,使所有人都能访问这些公共数据,以保持 JoyID 的去中心化。在将数据推送到链上之前,用户可以修改链上设备标签以隐藏他们的踪迹。例如,他们可以使用表情符号代替硬件/位置描述以保护隐私。最终,这一切都取决于用户自己。
CTMeta 标准https://www.cotadev.io/docs/protocols/CTMeta
Q10:能否详细介绍一下 Nervos CKB 区块链如何支持 WebAuthn 算法以实现无密码用户体验的 dApps?JoyID 如何实现跨平台和跨终端的功能,以及涉及的技术挑战有哪些?
A:Nervos CKB 采用 RISC-V VM 和验证模型,而非执行模型来实现共识,因此其计算效率远高于 EVM 或其他 VM。这使得 P256 和 RS256(由 WebAuthn 支持)签名验证相较于竞争对手变得可行。CKB 还具有强大的账户抽象功能,使账户能够适应 WebAuthn 签名格式和数据序列化标准。通过使用账户抽象,多个设备和跨平台生成的密钥可映射至同一账户。因此,用户无需使用助记词保存私钥,这些私钥会存储在设备的高安全区域内。同时,用户无需用密码保护密钥,因为 WebAuthn 接口允许使用生物特征进行签名认证。
Q11:能否谈谈 JoyID 的未来计划或发展,以及您对其未来演变的看法?
A:我们正着手开发以下 JoyID 功能:
L2 支持:将推出具有 JoyID 原生支持的测试网 Axon 链,这意味着所有 EVM dapp 可部署实例至 Axon,享受无密码、无助记符钱包。
可选的恢复功能:包括社交恢复和 Metamask 集成。
更多资产支持:如 mNFT、CoTA、sUDT、L2-ERC20/ERC721/1155 等。
L1 和 L2 的 SDK。
dapp 集成:如 NFTBox、token.city、dotbit 等。
JoyID 的一个令人兴奋的方面是,它有可能成为替代 Google/Apple ID 的通用账户系统,为 Web2 世界提供更好的用户体验和去中心化特性。因此,传统 Web2 网站可能将 JoyID 选为未来的无密码、无许可账户解决方案。
Q12:请介绍一下 Nervina Labs 在 Nervos、Token.City 和 NFTBox.Me 上的 NFT 平台,以及能量点、身份认证和支付验证过程。
A:NFTBox.me 是一个面向希望吸引更多用户的传统企业的中心化分布式平台,提供 SaaS 网站。然而,其底层技术采用的是去中心化的 CoTA 协议。
您可以直接与智能合约交互来铸造/转移 NFT,从而绕过 NFTBox.me。能量点用于 mNFT 协议,这是我们早期的 NFT 协议之一。每次分发需要 145 CKBytes,所以我们按分配向用户收取能源点数。
Q13:关于 JoyID 支持除 Nervos 之外的其他货币的详细信息或时间表,以及是否有支持所有(加密)货币的钱包的目标?
A:通过来自其他链的跨链桥,JoyID 将支持 Axon 上的各种 ERC20。Axon 团队正致力于 IBC 兼容性,以提高桥梁的强大性和通用性。
JoyID 无法支持其他链,因为它依赖于 CKB 提供的关键功能。但如果其他链采用 CKB-VM 作为地址认证模块,将其有效地作为 CKB 的 L2,那么 JoyID 可能没有技术障碍支持它们。
Q14:您预计 Nervos 将采用哪些隐私保护技术?(如 Mimblewimble、环签名、零知识证明等)
A:我相信 Nervos CKB 上可以实现所有这些功能。由于其 UTXO 模型和高度灵活的脚本系统,CKB 为隐私保护技术提供了良好的环境。
Q15:我注意到您为 RFCS21 编写了原始的 CKB-address-demo 代码。您可以推荐一个资源/参考资料,以便了解更多关于密码学的一般信息吗?
A:虽然我不是密码学家或密码工程师,但我是精通密码学应用的协议研究员和产品设计师。如果您希望对区块链相关的密码学有初步了解,而不深入技术实现、可证明的安全性等细节,我建议从 Coursera 等平台的密码学基础公开课开始,然后直接阅读最新的区块链密码学介绍,以便对密码学与区块链的结合有一个大致了解。如果需要更深入了解,可以查阅相关文献。
(完)
JoyID官网:https://joy.id/