对于大部分不了解区块链的人来说,区块链代表着一种大胆、果敢和纯粹的互联网新浪潮。 但现实是,想要达到区块链融入全民生活的愿景,这个领域还有很长的路要走。 CertiK的联合创始人,哥伦比亚大学的顾荣辉教授在哥大校友活动上发表了讲话,他谈到了区块链的安全问题,形式化验证如何帮助解决这些问题,以及CertiK为建立可靠的区块链系统所做的工作等内容。 顾荣辉教授演讲完整视频: 区块链之美 区块链,具体而言指的是:使用图灵完备的脚本语言的区块链。这是一项非常先进的技术。区块链具备巨大的潜力,也许未来可以从根本上改变我们目前的信任关系和交易方式。传统交易,例如交换两种资产,要求必须有诸如银行或托管账户等人们信任的第三方机构来代表交易双方进行交易。而有了区块链技术,在交换两种数字资产时不再需要第三方参与,这就是我们所说的去中心化。用户只需要信任区块链上的一个小程序,也就是智能合约,相信它具有正确的交易逻辑编码即可。人们深信去中心化的概念,比起相信第三方的管理系统和执行事务能力,用户更信任客观的程序。但是,如果这个小程序或者说智能合约本身是错误的呢?区块链的阴暗面 与其他计算机程序相似,智能合约也容易出现漏洞。造成这种现象的本质原因是程序员的设计意图和代码的实际实现之间产生了不匹配。区块链世界中bug丛生,其中最具有代表意义的是导致了价值5000万美元密码资产损失的TheDAO“double-spend”攻击,。2020年初,dForce DeFi智能合约中的一个漏洞导致2500万美元的损失。根据福布斯进行的一项研究,仅仅在2019年上半年,就有超过40亿美元的密码资产被盗,这是多少家庭一辈子的资产总和?因此在区块链的安全道路上,还有很长的一段路要走。那么,如何才能防止这些智能合约漏洞的产生,以及避免由此导致的经济损失呢? 可证明软件正确性的测试 区块链领域的安全解决方案其一就是不断地测试。然而,正如Edsger Dijkstra(图灵奖计算机科学家)所说,程序测试只能用来显示bug的存在,但永远不能证明它们不存在。如果你是一个程序员,你的意图是为了计算以下内容:然后你按照规范执行下列代码:要测试这个程序,只需使用特定的输入运行程序,并将实际输出与预期输出进行比较。在这个例子中,运行x=0且结果为1的程序。然后在x=1时运行程序,结果为4。看起来很简单,对吧?但是,这只是展示有限的测试用例列表,并不能保证整个程序的正确性。如果在程序的实现中,开发人员犯了一个错误,并且在不知情的情况下决定实现代码呢?如下图: 回想一下,规范(或程序员的本意)是:那么这个漏洞百出的程序仍然可以通过测试。因为在x=0和x=1的情况下,即使程序是错误的,得出的结果也是正确的:这就是目前测试方法的基本局限性。 那么除了测试以外,还有什么更好的办法避免区块链中的安全隐患呢? 形式化验证:可以更彻底地验证正确性 很多人,包括CertiK联合创始人,哥伦比亚大学的顾荣辉教授和耶鲁大学的邵中教授,都提到了形式化验证(关于形式化验证,请见参考链接1以及参考链接2中的内容)。这是“保证系统没有编程错误的唯一已知方法”。在前文分享的例子中,测试方法导致了一些错误。而在形式化验证中,是使用数学方法来证明一个程序符合程序员的设计意图或设计规范。从代码开始,就可以应用数学方式来分解和重新构建代码,以证明它符合设计规范。下面的例子将一步步展示证明过程:即使是这样一个简单的程序,形式化验证时也需要相当大的工作量。想象一下用这种方法验证复杂系统会有多难,比如验证现代处理器、OS内核和分布式区块链系统等。因此有一部分说法认为,对这样的系统进行形式化验证是不可能完成的。 具备深度规范的形式化验证综合系统 为了应对复杂系统形式化验证的挑战,顾荣辉教授和CertiK技术团队假设:形式化验证的瓶颈不在于证明技术本身,而是在于开发人员为形式化验证编写规范的方式。因此,团队开发了一种名为深度规范(Deep Specification,简称DeepSpec)的新技术。该技术允许用户编写可对话的规范,并创建证明和验证模块。通过这种方式,可以将原本极其繁琐的验证过程分解为许多更小、更容易解决的代码片段,从而减少了证明负担,并使复杂系统的形式化验证成为可能。利用深度规范,顾荣辉和CertiK技术团队构建了世界上第一个完全经验证的多处理器操作系统内核——CertiKOS,它已被证明是无漏洞和防黑客的。正如你所看到的,这一项工作已在许多顶级学术会议上被讨论过,并且被广泛认为是形式化验证方面的真正突破。深度规范这种技术在2015年被命名。这项技术后来被NSF Expedition项目和各大社区进行研究和宣传。使用DeepSpec保护智能合约 Deep Specification是如何帮助解决区块链中存在的安全问题?有了DeepSpec技术和CertiK专有技术的结合,可以通过多种方式来确保智能合约的正确性。假设现在有一个非常复杂的智能合约,它有许多相互依赖关系。下面是形式化验证智能合约的可视化表示:第一步是通过添加标签作为智能合约的规范来注释源程序。接下来,将智能合约的规范分解为各个抽象层的许多小组件,可以在其所属的层验证每个组件。然后,开发人员可以进一步将所有经过验证的组件组合成一个有保证的、经过验证的智能合约,这样验证就完成了。它将自动生成机器可检查的证明对象,也称为机器可检查的证书。用户可以在自己的机器上运行这个程序并检查证明。由CertiK验证的智能合约称为认证智能合约。想要知道详细的CertiK形式化验证引擎演示过程,可直接跳转到本文视频中的13分40秒查看。 CertiK的起源与发展 2018年,CertiK在纽约成立。其使命是使用这种DeepSpec技术使区块链系统真正值得信赖,旨在使用数学的方式来保护加密世界。CertiK的标志整体是一个盾(象征保护和安全),同时里面看起来像“倒着的A”的符号,在数学中的含义是“所有”(For All):即隔绝所有的危险,同时保护所有(财产)的安全。CertiK自2018年推出形式化验证服务以来,公司已经服务了超过150家企业客户,覆盖范围的行业和类型的项目包括加密货币交易所、稳定币、公链、去中心化金融、智能合约、钱包、块生产、体育和游戏类应用。到目前为止,CertiK已经验证了超过60亿美元的加密资产,凡是经由CertiK验证的项目至今还从未被攻击者入侵。但是抛开所有这些成就,区块链网络安全仍然是一个大问题。那么问题在哪呢?为什么还没有找到解决这些安全问题的方法?市场的成熟和安全需求 首先,尽管CertiK持续在为区块链安全做出贡献,但帮助的客户和保护的加密资产只是整个市场的一小部分,而整个市场的规模还在呈指数级增长。目前没有可行的方法核实区块链市场上所有项目的安全性。其次,智能合约只是区块链技术栈中的一层。编译器、虚拟机、共识协议、layer和节点都值得担心。栈中的任何漏洞都可能危及整个系统,并导致代币丢失。区块链在不断发展。它目前的发展阶段与依赖ISPs为电子邮件地址的互联网时代相平行。随着越来越多的公司和项目加入区块链领域,并见证整个市场价值的增长,人们可能会看到更多独特和复杂的用例,它们会带来更多并且更高标准的安全需求。 解决方法:CertiK的技术栈 出于保护加密世界的这个愿望,CertiK认识到需要一个端到端的解决方案来解决这个问题,在技术堆栈的每个级别上提供安全保障,从而保护所有的内容。CertiK技术团队已经开始建立CertiK技术栈。团队在哥伦比亚大学和CertiK建立的一系列的产品和技术,包括:DeepSEA工具链 CertiK Chain NoOps:区块链的CertiKOS DeepSEA工具链 CertiK Chain NoOps:区块链的CertiKOS CertiK未来发展计划 CertiK希望为区块链世界提供端到端的网络安全解决方案,通过提供有价值的产品来修复或支持生态系统中的每一个在哥伦比亚大学的实验室里制造出来的组件。CertiK团队有30多名研究人员和工程师,以及20多名商务和市场运营人员。总部设在纽约,目前在西雅图、北京和首尔均设有分部。在不久的将来,会继续将分部设立在世界各地。CertiK团队中的许多成员是哥伦比亚大学的校友,他们在本科、硕士甚至博士毕业之后加入了CertiK。还有很多团队成员来自耶鲁大学和其他著名大学以及其他高科技公司。在CertiK,每一个人都相信端到端解决方案、形式化验证技术、深度规范技术和产品将是构建值得信赖的区块链系统的关键。CertiK正在为团队补充新鲜血液,如果你想加入这个专业的团队,为区块链安全奉献出每一份力量,那么你可以访问以下链接查阅CertiK招聘及职位信息:https://jobs.lever.co/certik/中国区的职位申请也可以通过邮件联系我们:商务(BD)、技术及产品职位申请,请发送简历到:[email protected]其他职位申请请发送简历至:[email protected]期待你的加入! 文中参考链接1.https://certik.io/blog/technology/an-introduction-to-formal-verification2.https://www.jinse.com/news/bitcoin/288836.html3.https://certik.io/deepsea-blockchain/ 4.https://github.com/CertiKProject/deepsea-preview5.https://certik.io/blog/announcements/certik-co-founder-recieves-ibm-blockchain-grant-to-further-research-on-deepsea-framework-at-columbia-university 6.https://certik.io/blog/announcements/ethereum-foundation-awards-grant-for-deepsea-research-by-certik-yale-and-columbia-to-create-safer-smart-contract 了解更多 GeneralInformation:[email protected] Audit&Partnerships:[email protected] Website:certik.org Twitter:@certik.org Telegram:t.me/certik.org Medium:medium.com/certik 币乎:bihu.com/people/1093109 —- 编译者/作者:CertiK中国社区 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
CertiK:加入我们,与哥大教授共建可信赖的区块链系统!
2020-07-14 CertiK中国社区 来源:区块链网络
LOADING...
相关阅读:
- Binance IEO项目,波段协议,在上市新闻中看到了Coinbase的影响; 接下来2020-08-06
- 比特大陆在内部冲突中延迟了蚂蚁矿的运输2020-08-06
- 以太坊经典版在不到一周的时间内遭受了第二次51%的攻击2020-08-06
- 美国国会议员希望国税局在加密货币的创新与税收之间取得平衡2020-08-06
- Dapper Labs从风投公司和NBA球员那里筹集了1200万美元,净赚了120万美元2020-08-06