上个月,我们委托中国赛波实验室对Asch平台做了一次评测。
这里可以下载完整版的评测报告:17021500_高级确认测试4测试报告贵阳市大数据发展管理委员会ASCH去中心应用平台相里朋 (盖章版)

以下为报告中节选的评测结论:


测试结论
本次ASCH去中心应用平台的测试结论如下:
ASCH去中心应用平台采用采用分布式账本结构(包括块链式数据结构、区块ID、交易哈希、时间戳、分布式存储)、P2P组网、DOPS+PBFT共识算法、DAPP合约和基于侧链的跨链机制等技术,以及SHA2-256算法、ED25519算法,总体评价如下:
1)采用分布式账本结构(数据结构包括当前区块哈希值、上一区块哈希值、时间戳、交易哈希等结构),平台每十秒产生一个区块,区块数据分布存储在每个区块链服务节点的SQLite3数据库中;
2)采用P2P技术组成网状的网络结构,节点间以广播方式实现通信;
3)采用SHA2-256安全散列算法计算当前区块哈希值(ID)以及交易哈希值(payloadHash);
4)采用ED25519椭圆曲线签名算法进行区块交易数据的数字签名和验签操作;
5)采用DPOS+PBFT相结合的共识算法,以DPOS算法选举投票委托人,以PBFT算法投票表决共识结果,共识过程无需抢夺记账权,允许强监管节点参与;
6)采用基于Node JS编程语言实现了DAPP合约;
7)采用侧链技术,支持ASCH主链与DAPP合约(其实质为ASCH侧链)之间的跨链资产转入和转出操作。

本次测试中发现被测对象仍存在着一些不足之处:
1)被测对象不支持CA认证;
2)被测对象不支持国密算法;
3)被测对象不支持合约触发、合约可终止性。DAPP合约启动后一直执行,无法通过交易或条件触发执行或销毁。也无法在有限时间、有限步骤或有限费用内终止执行;
4)被测对象不支持ASCH主链与比特币、以太坊之间的跨链资产操作。并且以公钥前8字节为地址生成的ASCH主链账户,在执行提现操作时,ASCH主链余额应增加但未增加,提现结果存在异常;
5)被测对象未使用服务节点私钥,服务节点间通信采用明文方式传输数据。

对于那5点不足之处我想谈谈我的看法。
问:为什么不支持CA认证?
答:过去一年里,Asch平台的主要精力放在公有链的底层技术研发上面,而目前区块链的CA认证一般出现在联盟链项目中,并且只是一个可选项。CA的作用是颁发证书和鉴权,其本质作用就是账户的注册和验证,这势必会带来中心化因素,在一个去中心化的系统里引入了一个中心化的机构。公有链的账户一般是从一个几乎无限的地址空间里随机生成的,所以并不需要CA。
当然,我们也会考虑在一些分支版本中加入CA认证,北京阿希链科技有限公司就是专门为企业级用户构建联盟链底层平台的,而阿希开源社区只关注公有链技术。



问:为什么不支持国密算法?
答:Asch系统中普遍采用的算法是ed25519,它是eddsa的一个实现,目前被众多知名的开源软件所采用,比如OpenSSH,GnuPG,OpenBSD等等,另外, 区块链世界中大名鼎鼎的zcash、stellar也使用了ed25519,它同比特币使用的签名算法secp256k1都是国际上流行的加密算法,ed25519速度和安全性都极高,还有很多其他优点,这里就不一一介绍了。国密算法,我们以后也会支持,为应用开发者增加一个可选项。



问:不支持合约触发和可终止性是什么意思?
答:Asch是一个应用开发平台,并不是一个智能合约开发平台,应用与智能合约是不同的,虽然我一直在推广这个理念:每个去中心化应用都是一个广义的智能合约,准确来说应该是应用与狭义的智能合约是不同的。Asch采用的是多链架构,每个应用都会由一个独立的区块链来承载,Asch生态中的应用是隔离的、互不影响的,因此一个应用即使出了严重bug也不会影响其他应用,应用本身不需要考虑可终止性。


问:提现操作时,结果为什么出现异常?
答:目前这个bug已经被修复,在此也对中国赛波实验室的严谨性表示钦佩,我们本来提出当场修复bug后重新评测,但是被拒绝了,因为评测过程要求版本稳定,这样才能更加客观、真实地反映出被测对象的特性。这个bug的原因是对老地址的兼容上,目前Asch主链存在两种格式地址,一种数字地址,一种是类似比特币的base58check格式的地址,前一种地址由于其实现的不严谨本来应该被抛弃的,但为了对老账户的兼容,只能保留下来。但是在dapp中,我们是没有这个历史负担的,因此没有对老的数字地址做特殊处理,导致了这种异常。目前的修复方案是,全面禁止数字地址跨链转账到侧链或应用链,拥有数字地址的老账户可以先把资产中转到新的base58check账户,然后再跨链转移到侧链。



问:为什么服务节点间通信采用明文传输?
答:目前服务节点间的通讯并不涉及敏感信息,据我所知,其他的公有链也并没有使用密文的方式进行节点间通信。



总结一下,中国赛宝实验室的评测过程是相当专业和严格的,但Asch是第一个被评测的公有链,部分评测指标(比如CA、国密等)适用于联盟链,并不适用于公有链。
                           Aug 10, 2017