以太坊智能合约(EVM)“三宗罪”

时间:2024-09-20 编辑: 浏览:(653)

区块链是一个解决信任的革命技术,但可笑的是,每年都有约价值1000亿元加密资产蒸发,问题出在哪里呢?追根究底,我认为是以太坊智能合约出了问题,可能用V神的错误( EVM=Ethereum Vitalik Mistake)来描述更为贴切!

---------------------------------------

以太坊智能合约(EVM)“三宗罪”

1.用户不能表达交易要求

法律上,双方意思一致才是合约。合约双方必需对各方的付出和获得都达成一致,合约才能成立。那么用户在调用智能合约时,他同意的是什么?是接受智能合约所产生的任何结果,还是合约发布者宣称会产生的结果?绝大多数用户都不是程序员,不可能知道程序会怎么运行,显然他们同意的是合约发布者宣称会产生的结果.

2.矿工不验证交易结果

以太坊矿工是不可能验证智能合约的执行结果是否与用户的预期 (也就是合约发布者宣称的结果)一致,因为以太坊节点根本就没有这方面的信息。所以以太坊中所记录的每一笔智能合约交易只是证明“智能合约产生了这样 的结果”,而不是“合约双方同意这样的结果”。混同这二者的后果是致命的。在以太坊中,用户调用智能合约时,节点会执行智能合约,只要智能合约成功返回,节点就认为交易合法并予以记录。对于作为去中心化账本的区块链来说,很重要的一条就是交易必须经过验证。正如中本聪所说的:不要信任,要验证。这是区块链的金科玉律,任何时候违反它必然导致安全性问题。但以太坊并不验证智能合约的交易结果,而只是验证智能合约的执行过程。这种模式有什么问题呢?毕竟智能合约调用是用户发起的,难道不应该接受智能合约调用的结果吗?这是以太坊的思维。

3.资产由合约保管,非去中心化

在以太坊及大批模仿者中,每个智能合约都管理自己发行的代币的账本。也就是说,在这些区块链上存在不止一个账本。原生币有一个账本。每一种代币又各有一个账本。他们都是去中心分布式账本吗?对于原生币的账本不存在争议,对于代币的账本,我们需要考察一下什么才是一个去中心。所谓去中心指的是每个记账者(矿工)独立地决定各自所纪录的账本内容, 而不是机械地复制他人的账本。这种独立性包括独立地决定每一笔交易是否合法,从而是否纪录该笔交易。只要网络中造假者不占优势,就可以通过这种方式阻止非法交易成为区块链网络的共识,从而达到保护资产安全的目的。如果一个区块链中的矿工不具有这种独立决定每一笔交易是否合法的能力,那么这个区块链就不是去中心的,矿工们都必须依赖一个中心化的权威决定来决定每笔交易是否合法,因此所有账本就是由一个中心来控制的,这个中心就可以任意决定资产的归属,区块链就不能为用户提供安全性保障。而根据以太坊的智能合约交易模式,智能合约代币的账本是由合约管理,而非矿工管理。而每个合约都是由单一的项目方发布,矿工虽然纪录合约所产生的数据,但矿工并不理解这些数据,只能是合约要求矿工记什么矿工就记什么。这就是把所有矿工从记账人变为记账的笔,而指挥这些笔的人是合约的项目方。因此这些代币的账本不是去中心的,而是中心化的账本。这是非常不安全的。 

既没有交易安全,因为以太坊不能保证合约执行的结果符合用户期望;也没有价值储存安全,因为智能合约可以不经用户同意就转走用户资产。因此我们看到以太坊自发布以来已经发生多起与智能合约有关的安全性事件。相比之下,比特币从未发生过安全性事件。大家都认为智能合约的安全问题 是开发者的错误和疏忽所导致,所以业内在规范智能合约开发流程,对于智能合约进行形式验证,代码安全性审计,开发安全的智能合约语言等方面作出了很大的努力。然而智能合约的安全问题从根本上说是自以太坊发布以来业界对于去中心合约的错误理解和由此而来的不当交易模式所导致。解决了这个问题就能杜绝迄今为止的大多数智能合约安全问题。而不解决这些问题,现今的各种努力终归不能杜绝智能合约的安全隐患。 

正确的做法-----零熵【明示合意智能合约】

1.用户表达交易要求

2.智能合约满足用户要求

3.矿工验证用户要求得到满足

4.用户以私钥保管资产

对于作为去中心化账本的区块链来说,很重要的一条就是交易必须经过验证。正如中本聪所说的:不要信任,要验证。这是区块链的金科玉律,任何时候违反它必然导致安全性问题!零熵区块链为各种价值形态提供了一种统一的表达方式,所有通证在交易中都有平等的地位,即节点接收含各种通证的交易对它们记账,并按其类型进行合法性验证。如:零熵区块链在比特币式的UTXO交易模型中增加了智能合约调用, 扩展UTXO交易中包含输入、定义、输出三个部分。其中输入部分的每个输入项与比特币交易的输入项类似包含对之前交易未使用输出的引用和签名。定义中的每个定义项或者定义一个几何体(边界线,多边形),或者定义一个权益项(权益三元组)或权益集(权益项哈希值的集合)。输出中的每个输出项包含一个通证和一个脚本。脚本可以是比特币中那种锁定脚本,也可以是智能合约调用脚本),并允许交易参与各方(自然人和智能合约)通过UTXO交易模型表达各自的意愿;且智能合约执行完成并不自动代表交易合法,节点会验证各方的意愿是否满足,如果任何一方的意愿没有满足,则交易不成功,交易的结果以UTXO输出的方式交付各方。由于用户得到了一个UTXO输出,所以无需依赖智能合约为其记账,即使智能合约仍然维持一个账本,这个账本也没有外部效力,不影响用户资产的所有权。因此无论是智能合约发布者还是黑客都不可能盗走用户的资产,各种智能合约安全问题得以避免。

明示合意智能合约中合约不是单纯地满足用户要求,合约也可以表达自己的要求。例如在货到付款的场景中,用户发起交货的合约调用,合约执行时就可以通过向交易中添加以合约为付款对象的输出来提出付款的要求,用户如果没有提供相应的输入,则交货不成功。

明示合意智能合约由于采用UTXO模式,因此允许在一个交易中有多个智能合约调用,从而实现多方合约的组合。比如货到付款的场景中,参与方包括买方、卖方、货运方三方,其中卖方和货运方都可以以智能合约参与,而整个交易依然是原子化的。这在目前以太坊智能合约模式中是难以做到的,需要至少二个独立的智能合约调用,因而存在欺诈风险。

明示合意智能合约安全的关键在于用户不经手智能合约直接控制自己的资产。有人可能会说如果坚持这么做,很多DEFI应用就无法进行。如果张三不先把钱给智能合约,智能合约怎么能代表张三把钱借给李四?这种论点误解了控制权与所有权的差别。从法律上说,张三把钱给智能合约,转的是控制权而不是所有权,是控制未来将钱转给李四的权利。因此如果有一种机制能转移控制权而不转所有权,就依然能实现DEFI的目的;零熵区块链中包含二种转移控制权而不转所有权的机制,完美的解决了这个问题!

零熵内置货币的发行,相关的5项专利技术早已申请,并获得了多项国际专利。

最新 更多 >
  • 1 MYRA币历史价格走势怎么样?

    MYRA币历史价格走势怎么样?MYRA币是一种去中心化的数字货币,最初推出的目的是为了解决大型主流平台上的挖矿难度过高和防范恶意挖矿攻击,因为它支持GPU和CPU挖矿。然而,MYRA币的历史价格走势并不平稳,短时间内价格波动很大,进而引发投资者的注意。在2017年,MYRA币的初始价格大概是0.13美元。价格在接下来的几个月里波动,最终在2017年11月左右达到了历史最高价0.6美元。然而,市场对

  • 2 CZUSD币最高的时候是多少钱?

    CZUSD币最高价要说CZUSD币的最高价,就必须先了解它是一种什么样的数字货币。CZUSD币是一种运用了区块链技术的加密数字货币,它的诞生旨在提高区块链技术在金融领域的应用,与其他数字货币相比,它有很多优点,如交易成本低、交易速度快,且交易可追溯等。这些优点让它在加密数字货币市场中具有很高的竞争力,也成为了很多人的投资方向。那么CZUSD币的最高价究竟是多少呢?在了解CZUSD币的历史价位之前,

  • 3 DATA币最高的时候是多少钱?

    DATA币最高时刻DATA币是一个去中心化的数据交换平台,在数据共享和隐私保护方面具有独到的优势。该币种于2017年12月上线交易所,曾经一度成为虚拟货币市场中备受关注的热门币种。而DATA币的历史最高价也是在2017年12月创下。DATA币最高时刻出现在2017年12月21日,当时DATA币的价格达到了每枚0.207美元,也就是每个DATA币大约价值1.34元人民币。在当时虚拟货币市场火热的背景

  • 4 DAO1币最高的时候是多少钱?

    DAO1币最高的时候是多少钱?DAO1币是现今市场上的热门币种之一。这种币种可以让用户投资未来DAO生态系统,为整个DAO社区提供支持。DAO1币的价格在不同时间段内波动,但在某些时间段内,它确实取得了非常高的价值。所以,DAO1币最高的时候是多少钱呢?要回答这个问题,我们需要回到DAO1币的历史。DAO1币是在2019年推出的,最初价格约为0.04美元。在接下来的几个月中,它的价格略微波动,但没

  • 5 CW币最高的时候是多少钱?

    CW币曾经创下了历史上的最高记录,许多人为此感到兴奋和惊喜。但是,这种快速的升值并没有持续太长时间,CW币价格也随之疾驰而下。那么CW币最高是多少钱呢? CW币的历史 CW币是一种基于比特币技术的加密货币,于2017年12月8日上线。一开始,这种货币的价格不高,只有几分钱而已。但是,不久后CW币开始迅速上涨。截至2018年1月5日,CW币价格达到了17.5美元,创下了历史最高纪录。 CW币的

  • 6 MST币的创始人是谁

    谁是MST币的创始人?MST币是一种加密数字货币,是区块链技术的重要应用之一。MST币的创始人是一位名叫徐祎栋(Eric Xu)的年轻人,他曾在谷歌、金融机构等知名公司工作过,拥有丰富的技术和金融背景。MST币的创始人:徐祎栋徐祎栋的父亲是一位从事金融投资的专业人士,自小受到父亲的熏陶,他对金融行业非常感兴趣,并且自学了很多有关金融的知识。后来他考入了清华大学计算机科学与技术系,学习了计算机科学和

  • 7 NAI币最高的时候是多少钱?

    NAI币最高价达到多少NAI币是聚焦于游戏行业的加密货币,由于其本身的市场前景以及团队的实力,在某个时间点曾经创下了惊人的价格记录。那么,NAI币最高价是多少呢?NAI币最高价纪录2018年是加密货币市场的大年,也是NAI币价格逆袭的一年。在这一年的3月份,NAI币的价格达到了惊人的31.15美元。尽管这个价格相对于比特币来说并不算高,但在小众的游戏行业内,这个价格已经足够令人瞠目结舌了。NAI币

  • 8 DELTA币的创始人是谁

    DELTA币的创始人是谁?这是一个让人好奇的话题,毕竟在数字货币界,有一个币种有着很高的知名度,但却并不知道其创始人的身份。那么,接下来我们就来深入了解一下DELTA币的创始人是谁。DELTA币的历史DELTA币是一种基于区块链技术的数字货币,它的诞生可以追溯到2017年。当时DELTA币的创始人匿名发布了白皮书,并在2018年正式上线。DELTA币一经推出便吸引了广泛的关注,并迅速在数字货币市场

  • 9 DCO币的创始人是谁

    DCO币的创始人是谁?DCO币是近年来崭露头角的数字货币,许多人都被其所吸引,但不少人对于DCO币的创始人一无所知。那么,DCO币的创始人是谁呢?谁是DCO币的创始人?DCO币的创始人是一位神秘的数字货币爱好者,他名叫郭某。郭某曾经是一位IT从业者,在2007年涉足了数字货币行业,他自己也是一名矿工。据悉,在2017年,DCO币正式发布,成为数字货币市场的明星,郭某也成为数字货币领域当中的佼佼者。

  • 10 nUSD币历史价格走势怎么样?

    nUSD币历史价格走势怎么样? nUSD币是由Havven基金会推出的,旨在创建一个稳定币和去中心化支付网络。它的初始数据开始于2019年5月22日,当时价格为0.51美元。 在其初始发行几个月内,nUSD价格波动比较明显。然而,从2019年8月开始,nUSD进入了逐步上升的行情,随后一路攀升。 2019年11月,nUSD价格达到50美分的新高点,这是它成立以来的最高价。 然而,2020年初