百度区块链xuper推荐

最近因为工作需要,花了很长时间研究了区块链相关应用,可信存证、联盟链、开放联盟链都看了用了,涵盖了以太坊、蚂蚁链、百度超级链、趣链各家的产品,也实际用各家的sdk调用测试过,意外发现如果单纯从开发人员使用方便的角度,百度的xuper是一个很好的选择。虽然最近大火的是stable diffusion和ChatGPT,区块链早已经是过了风头,但既然花时间研究了,还是记录下来供大家参考。

产品体系

百度超级链按照不同的使用方式可以划分为三种产品:开放网络、超级链BaaS、XuperChain。

开放网络

开放网络是百度提供的用户部署和运维成本最低的上链途径。不必搭建私链,注册一个百度账号后,可以直接编写合约、调用、业务上链。

试用开放网络sdk时发现,这是一个2B的解决方案,2C能力较为欠缺。体现在C端用户无法直接接入到链上,无法拥有自己的钱包地址。这个猜测和国内的区块链监管政策有关,国家要求区块链可管可控,禁止炒币,所以在国内各家提供的开放联盟链上都直接禁用了C端用户直接上链的功能。

蚂蚁链也有类似的准公链产品,开放联盟链。两家我都有做测试,主要区别在于百度联盟链创建合约账户的成本非常高,单次调用大概要1元钱。蚂蚁链的合约账户就相对便宜很多,而且未查询到两家对合约账户的数量有做限制。所以如果做C端,并且希望在链上有独立地址与C端用户映射的话,蚂蚁链可能方便一点,当然也可以自定义用户合约,将用户与用户合约地址相对应,来实现用户到链上的映射。

超级链BaaS

超级链BaaS是百度针对企业私有化部署推出的高成本解决方案。成本有多高看看下面的截图就知道了,随便增加几个节点就大几十万花出去了。百度超级链BaaS的一个特点是可以引入权威见证节点背书,提高自己私链的权威性,方便在区块链项目建设初期提高自己的信用。因为这个使用成本太高,我没有进行使用。

XuperChain

接下来就是本次的重头戏,开源版本的XuperChain了。XuperChain是百度超级链的开源版本,我在本地部署了一条进行测试,它与开放网络版本的最大区别是可以为用户创建自己的账户,用户拥有私钥和自己的钱包地址,可以通过百度提供的xchain-cli工具向账号转账,或者通过jdk远程调用转账。这样就实现了用户可以控制自己的钱包密钥,不需要通过中介转发,实现真正意义上的DApp。详细内容可以参考超级链官网https://xuper.baidu.com/n/ps/opensource

XuperScan

百度还开发了配套的开源版本的区块链浏览器XuperScan https://github.com/xuperchain/xuperscan/blob/main/README.md,可以进行一些简单的查询。

总结

以上就是对百度超级链的简单推荐,如果有需要可以直接去官网查看文档,文档写的很详细。其适用场景、配套工具、文档完善程度等都是我试用过几家里面最好的。

合约账户?

XuperChain与开放网络一样,都有合约账户的概念。这里单独列出来写,是因为我有个疑问,如果有小伙伴看到这里并且知道原理,希望能留言帮我解答,非常感谢简单说就是为什么百度、蚂蚁这些链要设计专门的合约账户?

国内百度、蚂蚁等区块链都有合约账户的概念,定义为一个没有私钥,用来管理线上合约的账户,比如百度超级链中对合约账户的定义如下:

合约账号是XuperChain中用于智能合约管理的单元,由普通账户发起交易,在链上生成的一个16位数字的账户,存储在链上。发起合约相关交易,比如合约调用时,需要使用合约账户。

我没有想清楚的是为啥调用合约需要用一个专门的合约账户,直接用普通账户不可以吗?对照以太坊,以太坊上的合约账户=合约。以太坊的合约地址是可以存储余额的,并且可以将余额转出。在XuperChain上我测试,合约地址同样是可以存储余额,但是转出余额时会报错。同样的代码在以太坊上就可以将合约地址的钱转出。猜测报错的原因是转账时其实是链给自动创建了一个同名的链上账户,并不是真的转入了合约地址,所以合约地址其实还是没有余额的。

猜你喜欢

转载自blog.csdn.net/u010022975/article/details/129708917