不光是对开发者有学习成本,对区块链性能方面、安全方面都有影响。总而言之,区块链系统者给你做了选择,你只要用区块链系统就不能再做其他的选择。 以上三个方面是现在能够看到的区块链在抽象层次上比较大的问题,我们也希望解决这些问题。解决的方式,说起来也很简单。既然找到了问题,就要对账户做抽象,对密码学做抽象,对运行时做抽象,给用户和开发者更多的选择。 我们是怎么做的呢?在账户抽象一层,Nervos 推出了新的数据账号模型——Cell model。有了账号抽象之后,能够实现什么样的效果呢?在抽象账户上的应用,可以被不同地方的用户用到。 比如说,你是普通的互联网用户,你只有邮箱,你可以直接使用区块链上的应用,你不需要下载新的钱包入口,你也不需要设置你的私钥、助记词,你可以直接使用邮箱做账户就好了。 我们同样也可以利用手机的安全芯片,安全、方便地帮你建立一个账户。如果你的手机芯片和人脸识别是关联的,你可以直接用人脸识别控制账户,整个过程中你不需要学习区块链任何特殊的东西,只要用你现有的东西就可以了。 Nervos 上已经有不少应用在这样做了,像 Unipass 这样的应用就是一个基于 e-mail 的去中心化区块链账户系统,还有像 DAS 这样的应用,也是利用抽象账户的特性,使得互联网用户、以太坊用户、EOS 用户都可以直接操作应用,而不是只有 Nervos 用户可以操作应用,这是互操作性。 如何做密码学抽象?密码学抽象的核心是需要有非常高效的虚拟机。我们自己实现的高效虚拟机是 CKB-VM,它采用的是开放指令级 RISC-V,得益于 RISC-V 指令级的特性,CKB-VM 可以让开发者用 C 和 Rust 来实现密码学算法,好处不仅仅是高效,并且很多成熟的密码学算法实现可以直接被搬到区块链上来运行,也就是说它们可以被搬到 Nervos 上运行。 密码学算法的实现其实非常困难,如果我们先去实现密码学算法,那么这样会很容易出错。如何判断密码学算法的实现是不是安全的?唯一的最好的检验标准就是它的成熟度和使用时间,使用的人越多,使用的时间越长就越安全。 能够直接移植 C 和 Rust 做的密码学好处是不需要重新实现一套,如果用 Solidity 重新实现一套,那么安全性就值得考虑,因为它是新做的事情,里面可能会有 bug,需要时间矫正。 通过高性能的 EVM,通过支持 C 和 Rust 的 EVM,可以高效复用现在大部分的密码学算法,因为现在大部分现有的密码学算法就是用 C 和 Rust 实现。 (责任编辑:admin) |