• <meter id="ddfke"><delect id="ddfke"></delect></meter><tt id="ddfke"></tt>
    1. <small id="ddfke"></small><var id="ddfke"><ol id="ddfke"></ol></var><code id="ddfke"><delect id="ddfke"><source id="ddfke"></source></delect></code>

        新一代安全创企该如何保护区块链代码?

        2018-09-29 13:31 稿源:猎云网  0条评论

        图片来源图虫:已授站长之家使用

        【猎云网(微信号:ilieyun)】 9 月 28 日报道(编译:福尔摩望)

        9 月初,由Cameron和Tyler Winklevoss创立的加密货币公司Gemini Trust宣布,它已经获得纽约州监管机构的批准,推出一套与美元价值相关的数字通证。

        这些名为Gemini Dollars的通证可以在以太坊区块链上,通过名为智能合约的专门程序从一个人发送给另一个人。为了证实其通证?#23548;?#19978;是由传统的美元所支持的,Gemini发布了一份独立会计师事务所的报告。该公司还发布了一份独立的审计报告,重点没有关注在财务,而是基础软件代码上,该代码来自纽约一家名为Trail of Bits的安全公司。

        “评估的目的是发现漏洞,从而让攻击者无法进行只针对发行者的行动,”Trail of Bits首席执行官Dan Guido在Gemini发布的一封信?#34892;?#36947;,并解?#32479;疲?#27979;试中发现的所有问题?#23478;?#32463;得到解决。

        Trail of Bits是为智能合约提供?#38469;?#23433;全审计的几家公司之一,这些智能合约处理从为区块链初创企业筹集资金的ICO到建立在区块链网络之上的复杂数字市场的所有事务。智能合约是由支持区块链的计算机运行的专门程序,通常在满足某些条件?#20445;?#26377;权接收和分发加密货?#19968;?#20854;他数字通证。专家们表示,编写它们需要新的思维方式,这可能会让没有经验的程序员出错。

        悉尼区块链软件和网络安全公司Sigma Prime的董事Mehdi Zerouali说:“?#23548;?#19978;,编写智能合约是一个全新的、不同的?#29420;!?/p>

        “?#34892;?#38169;误非常可怕”

        所有的软件都可能?#26032;?#27934;,但是由于智能合约通常是?#33539;?#35841;拥有价值加密资产的唯一方法,因此他们代码中的错误可能会导致特别严重的后果。当然,如果发现了它们,黑客们会急切地利用它们窃取数字资产。根据ICO跟踪公司CoinSchedule的数据,仅在今年,各大公司就通过ICO筹集了预计超过 200 亿美元的资金。

        “?#34892;?#38169;误是非常可怕的,”Guido表示。“如果你产生了它们,它们不仅非常严重,而且对于查看你的智能合约代码的人来说也非常明显。”

        最著名的错误是在一个去?#34892;?#21270;、以以太坊为基础的投资基金DAO的代码中,DAO指的是分布式自治组织。 2016 年,黑客利用其代码中的漏洞窃取了大约 5000 万美元的加密货币,尽管后来以太坊?#32422;航?#34892;?#35828;?#25972;,返还了被盗的资金。

        此后,安全专家一直致力于寻找可能导致智能合约失灵的因素,并开发工具来帮助自动检查代码中的错误。他们还对新的智能合约进行了审计,并经常公开发布,这有助于让投资者和终端用户放?#27169;?#20182;们不会因为编程?#25910;?#32780;损失资金。

        Trail of Bits已经发布了许多开源工具来分析和测试用Solidity编写的程序,Solidity是一种常用于编写智能合约的编程语言。Guido说,开发Solidity程序的标准工具没有那些更成熟的语言工具复杂,所以在专门软件部署之前,它们会存在漏?#30784;?/p>

        “它缺乏其他现代语?#36816;?#20855;备的许多安全保障,”他说。

        当智能合约成为愚蠢错误的牺牲品时

        智能合约可能会成为一些同样类型错误的牺牲品,这些错误,比如基本的算术错误或者程序?#24065;?#22806;地为多个值重用同一个变量名,可能会影响其他软件。但是它们?#37096;?#33021;受?#25945;?#27530;错误类别的影响:对区块链代码可用计算能力的限制可以被?#32654;创?#21457;拒绝服务攻击,这使得智能合约中包含的数据超出了它们的处理能力。某些数值大小的上限会导致错误,过大的数字会归零,类似臭名昭著的Y2K错误。这可能会导致大账户被减少到只有几便士,甚至?#33322;?#20313;的账户会被视为拥有巨额的正结余。

        一些不安全的代码可以用自动分析工具检测到,无需太多人工干预:瑞士创企ChainSecurity的联合创始人兼首席科学家Petar Tsankov说,如果合约?#24066;?#20219;何用户提取资金,这可能是一个错误。该创企来自于瑞士知名的科技大学苏黎世联邦理工大学。ChainSecurity已经开发了一种叫做Securify的工具,它可以快速发现并标记Solidify代码中的潜在问题。

        但是,其他的漏洞只有在合约?#23548;?#24037;作的背景下才能被发现,这意味着安全审计的第一阶段通常包括与开发人员坐下来,了解他们的合约希望实现什么。

        “通常,关于合?#21152;?#35813;做什么有非常非正式的文件,”Tsankov说。

        然后,通常会有人工分析和自动测试相结合的方式来?#33539;?#21512;约是否有可能违反其规范。Trail of Bits开发了一个名为Echidna的工具,它可以通过各种输入快速执行智能合约,寻找让代码产生问题的方法。当发现错误?#20445;?#23433;全测试人员会为开发人员标记它们,并帮助确保它们在代码部署到实时的公共区块链之前得到解决。

        安全公司通常说,随着他们了解常见错误,他们的客户越来越擅长编写安全智能合约代码。Zerouali说,随着?#38469;?#30340;成熟和程序员分享?#34892;?#30340;?#23548;?#36825;种模式在包括网络本身在内的科技行业的其他角落已经出现过。

        但与?#36865;保?#19968;度只需要对ICO背后的合约进行审计的加密初创公司,现在正利用他们的ICO收入?#21019;?#36896;更复杂的产品。Tsankov说,这包括更复杂的智能合约,需要?#20113;?#33258;身的缺陷进行审计。

        “现在,一切?#21482;?#24402;原位,”他说。?#26696;?#26434;程度也正在迅速上升。”

        有好的文章希望站长之家帮助分享推广,猛戳这里我要投稿

        相关文章

        相关热点

        查看更多
        ?
        双色球复式价格表图
      1. <meter id="ddfke"><delect id="ddfke"></delect></meter><tt id="ddfke"></tt>
        1. <small id="ddfke"></small><var id="ddfke"><ol id="ddfke"></ol></var><code id="ddfke"><delect id="ddfke"><source id="ddfke"></source></delect></code>

          1. <meter id="ddfke"><delect id="ddfke"></delect></meter><tt id="ddfke"></tt>
            1. <small id="ddfke"></small><var id="ddfke"><ol id="ddfke"></ol></var><code id="ddfke"><delect id="ddfke"><source id="ddfke"></source></delect></code>