我到处找了很多遍,但找不到答案。
我的理解是,一个Ethereum区块链,应该有一个/多个类型的合同。一旦生存,那些合同是不变的,没有人可以添加另一种类型的合同。如果需要创建另一种类型的契约,则应该在链中出现叉子。
这是真的吗?
在这种情况下,关于处理有经常变更或经常有新产品的合同的企业的一般建议是什么?我们每次都要旋转一个新的区块链吗?
发布于 2019-12-21 05:48:55
你的理解似乎不正确,虽然很难完全理解你说的话。
在Ethereum中,新合同部署是一种事务,类似于加密货币的传输,因此可以随时部署新合同,不需要分块链或启动新合同。
一旦部署,合同的字节码(控制合同行为的计算机程序)变得不可变,而合同状态可能会发生变化。合同状态包括合同中的乙醚含量、合同“S”储存的数据等。
只要字节码可以在此分析的基础上分析契约状态并改变其行为,契约行为通常就会发生变化,尽管字节代码可能不会改变。例如,可以部署一个字节代码实现( Forth )1解释器的契约,在Forth中编写实际的契约逻辑,并将其放入合同的存储中。
这样,我们就可以使用完全可变的代码来获得智能契约。
回到您的问题上,有几种方法可以使您的合同随着业务的发展而发展:
如果你需要更多关于这些选项的细节,请告诉我。
https://ethereum.stackexchange.com/questions/78413
复制相似问题