《certik代码审计.docx》由会员分享,可在线阅读,更多相关《certik代码审计.docx(1页珍藏版)》请在优知文库上搜索。
1、CERTIK代码审计全球第三大代码审计CertiK是款通过数学方法(形式化证明)验证智能合约漏洞的分布式应用,CertiK开发了一种基于层的方法,将待审计的代码按照逻辑上的层分解为较小的证明任务,在于分布式的网络中分包并完成证明生成代码审计报告,Certik基金会的工作由耶鲁和哥伦比亚大学三位教授主持。这款分布式应用解决了:个问题:1)一款区块链上的分布式应用整体的代码审计,而不是针对某几个函数2)如何分包代码审计任务3)如何让代码审计的发包和分包方互相信任,完成工作。为了解决这几个个问题,他们使用了多种实现手段:1)制能标舛的他市包必CA。P笄科州和体坛空.皓坛处不打发孑梏总.申发手语曲即2
2、、圣田岫们金攵的,IAVPrdPPHCpecification将待审计代码分层,按照互相依赖的关系分解成许多简单模块,在分布式网络上发包,把复杂的任务简单化.3)开放接口,方便多种自动验证算法接入平台验证。4)便于机器检验的对象5)安全的DaPP库和插件,为J提高整个区块链社区的代码质辰和可靠性,CertiK平台为集成开发环境(IDD提供了系列经过认证的库和插件,付token(他们的Sken叫CTK,后面会提到)就可以拖下来使用。6)定制化的代码审计内容和报告CTK是这个分布式应用上的token和fuel,发包代码审计任务需要消耗CTK,执行审计和险证任务的节点可以获得CTlGCertiK平台
3、弓I入了一种新的采犷方案,名为PrOOf-Of-ProOf(POP).传统的物犷POW(Proof-of-Work)原理是矿工找到有效区块,即将瞌听到的广播交易逐层哈希加密打包成merkelTree状数据结构,穷举法找到一个随机数,使整个区块的哈希值小于目标价.,在CertiK团队看来,这种浪劣算力的行为没有任何价值(我也这么认为,费电费机器),这个PoP方案通过CTK在五个不同角色中的流动来统整个社区:1)客户(CUStomer)-比如需要代码审计的开发者,可以向CertiK平台的网络提交需要验证的程序/系统或符合开放协议的任何证明义务(符合开放协议)2)赏金猎人(Bountyhunters
4、)-是那些希望CTK激励并希望分享他们的计兑资源的人。他们提供兑力完成证明和代码审计,然后等待验证“由于此角色的重要性,只允许拥有一定数量CTK的用户担任此角色.3)检行员(Checkers).验证证明和代码审计结果,可以通过记录定期交易或检查提交的证明对象来获得CTK奖恸。赏金猎人只有在证明得到验证后才能获得奖励,监察房也可以获得这些奖励的一小部分.4)Sages-是通过CertiK平台的开放协议提供工具(验证凭法引擎)的人。他们提供的工具可能被赏金猎人随机使用,可以根的评估结果获得一些CTK奖励。优秀的工具将由社区研究和传播.5)用户(USer)用户可以订阅所有CertiK平台的认证库和I
5、DE插件,支付部分CTK,搭建自己的DApps。(买乐高搭积木)CertiK尚未发token,主要的代码审计竞争对手是Zepplin和Quantstamp,Zepplin是人肉验证的基本安全的智能合约模版库,想自己写的拖出来稍微改改就可以了,因为被很多只眼病看过,相对比较安全。但CertiK车飘的更猛,完全通过形式化证明这种数学方法和分布式的系统查找DaPP代码中的逻辑漏洞,完成代码审计工作.结论:1.CertIk技术更牛,牛在普适和严格,而非基于人肉的经验,看好CTiG2 .区块链自身数据结构特性和巨大的利益承教,使得分布式应用的代码审计非常必要.不仅能够提高代码质垃,避免被黑,(反若说就是区块链上的应用难以调试,难以更改,挖洞更有价俏,):也能有效识别空气币的源代码,砸中真正有应用价OHKJDapp.3 .买token前一定要看代码,一定要看代码,一定耍看代码。