区块链本身的不可篡改性是具有安全属性的,它有效地保证了数据的完整性。但是不可篡改性是一把双刃剑,当链上出现漏洞的时候这些漏洞往往无法弥补。当我们将安全性与区块链集成时,需要采用深度防御方法。区块链的一些顶级安全控制包括:智能合约安全,DAPP安全,共识节点强化,加密交换安全性,身份和访问管理,节点到节点流量加密,链上和链下数据加密等。 智能合约由于一经发布无法修改,这样如果存在漏洞,往往会产生直接经济损失并且难以挽回,而智能合约的审计和验证费用高昂,就算经过审计也难以避免其中存在安全隐患。目前这个领域的研究方向大多希望通过形式化证明的方式来确保只能合约的安全性,虽然已经有大量研究人员进入这个领域,但是仍然在发展过程中还未成熟,对于复杂的合约逻辑依然难以满足。 共识安全,比如POW的51%攻击,分叉等等情形正是因为PoW在某些情况下依然无法达到非常安全的情况。由于不可能三角的存在,安全性,去中心化和可扩展性不能同时兼得,极大的限制了区块链技术的发展。如何按照具体应用,在不可能三角找到最佳的平衡是区块链项目需要研究的课题。 节点安全涉及到区块链底层实现逻辑的漏洞,譬如EOS爆出过远程攻击漏洞,ETH的RPC端口暴露,以太坊默认对RPC不做鉴权的设计引起资金被盗的问题等。这种安全隐患往往难以察觉,一般都是在区块链系统运行过程中爆出类似漏洞,这样需要在区块链上线前进行大量的重复测试和验证。 数据加密安全和之前提到的漏洞不太一样,由于区块链本身是公开透明的,很多隐私数据无法在链上流转,这个时候可以通过多种密码学算法譬如零知识证明,MPC等技术达到在不暴露信息的情况下进行验证。 当然,其他一些信息安全包括私钥管理、通信安全、加密算法、钱包多签名漏洞等等也是区块链技术所要研究的方向之一。 |
|