区块链技术与应用(北大公开课,肖臻)- ETH 反思

本文探讨了区块链技术中的智能合约并非真正智能,其不可篡改性是一把双刃剑,带来了软件升级和漏洞修复的难题。以太坊的Solidity语言设计存在重入攻击风险,提出了对智能合约编程语言安全性的思考。同时,文章指出去中心化并不意味着不能修改规则,而分布式系统并不等同于去中心化。
摘要由CSDN通过智能技术生成

 24. ETH 反思

1. Is smart contract really smart?

smart contract is anything but smart.

智能合约就是一段写死的自动执行的合约代码,并不智能,而且写好之后就不能修改。

2. Irrevocability is a double edged sword.

一方面不可篡改性增加了合约的公信力,所有人都只能按照合约中的规则来,没有人能够篡改这个规则;

另一方面不可篡改性意味着如果规则有漏洞,想要修补漏洞或者软件升级都是很困难的,硬分叉是非常麻烦的,和传统的中心化系统相比,没有办法及时发布补丁修复,必须征得绝大多数矿工的同意才行。硬分叉的时候又需要说明理由,一旦说明理由又会泄露系统的安全漏洞,有恶意的攻击者会在还没来得及升级前抢先发动攻击。

另外,即使我们已经发现了系统漏洞,已经有人进行恶意攻击了,想要冻结账户终止交易都是很困难的,比如个人的私钥泄露,没有办法进行软分叉,因为没有办法发行一个软件的更新并设置凡是跟这个账户相关的交易都是不合法的,这才能够冻结,但是对于个人账户来说明显是不可能的,只能把账户剩下的钱尽快转到安全的账户。智能合约一旦发布到区块链上,没有办法阻止对它的调用。比如The DAO事件,1/3的钱被黑客盗走了,剩下的2/3的钱也非常危险,没有办法阻止别人调用智能合约,唯一的办法是用黑客的方法把钱转到另一个安全的合约。

3. Nothing is irrevocable.

篡改是很难的,但是遇到特殊情况也是可以篡改的。

分叉攻击可以篡改区块链的交易,The DAO攻击之后以太坊团队也是强行修改数据使得交易恢复被攻击之

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值