【问题标题】:Where in Ethereum blockchain do transaction details of a smart contract get written?在以太坊区块链中,智能合约的交易细节是在哪里写的?
【发布时间】:2017-09-11 22:19:31
【问题描述】:

我一直在阅读有关区块链和以太坊的文章,但我似乎无法理解几个概念。

首先,新创建的交易存储在区块链的哪个位置?因此,如果区块链已经运行了一段时间,假设我们现在在区块 X 上。如果我今天部署我的合约并且它被执行,我的交易详细信息会驻留在区块 X 之后的每个区块上还是仅驻留在区块 X + 1 上?我的交易细节会是那个区块的唯一细节,还是那个区块会包含在那个时间段内发生的每一笔交易?同样,所有先前的块交易是否也被写入后续块?如果超过 1 笔交易从同一个合约中执行,只是写成 2 个不同的区块或在同一个区块内,会发生什么?

其次,在设计合同时,我看到它通常仅限于签订合同的两方,并且其他人使用该合同必须创建一个新的合同实例,这种理解是否正确?还是应该以每个人都使用它并且只创建一个实例的方式设计一份合约?

【问题讨论】:

    标签: bitcoin blockchain ethereum smartcontracts


    【解决方案1】:

    新创建的交易存储在区块链的什么位置?

    在每个节点存储的块中。

    我的交易详情是否会驻留在区块 X 之后的每个区块上,或者 仅在区块 X + 1 上?

    每笔交易只存在于一个区块中。每个区块都与前一个区块相关,所以你的交易贯穿整个区块链。

    我的交易详情是否会成为该区块的唯一详情,或者 该块是否包含该块内发生的所有事务 时间段?

    这取决于区块链的实施。例如,比特币区块存储了 10 分钟内发送的所有交易,因为每个区块每 10 分钟(或多或少)被挖掘一次。

    第二

    区块链是一个分布式系统,所有成员都处于同一级别。因此,他们就他们将要做什么达成共识,即所有成员都必须就其区块链的功能达成一致。

    对于每个区块链,您可以拥有多个合约。但我将更简单地解释它。智能合约是安装在区块链所有节点上的代码,每个请求都针对它执行。因此,每个节点/成员都必须相同。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-12-09
      • 1970-01-01
      • 2017-06-24
      • 2018-11-26
      • 2021-07-27
      • 2019-04-07
      • 2018-06-14
      相关资源
      最近更新 更多