主页 > 苹果手机如何下载imtoken > 以太币和比特币的工作原理

以太币和比特币的工作原理

苹果手机如何下载imtoken 2023-01-18 10:52:25

要了解以太 (ETH) 或比特币 (BTC) 的工作原理,最好从交易开始,因为几乎所有概念和原则都围绕交易展开。

本文将研究普通 ETH 交易和 BTC 交易在结构上的异同,从而了解各自的工作原理。

下面是在Etherscan上随机捡到的一笔交易(以太坊的区块浏览器,链上发生的任何交易都可以在Etherscan上看到),我们先来分析一下这笔交易的内容。新闻。

以太坊上的普通交易

第一个点“交易哈希值”,也就是这次交易的id,是一个唯一的标识值,比如我们的身份证号。此值是有关此交易的所有信息的哈希值。

第二个点,“Block”,就是本次交易所在的区块,即“区块高度”。后面灰色标签中的“13 Block Confirmations”表示在这个区块之后已经收到了12个区块(包括这个区块,总共有13个区块已经被确认)。因为可能会出现分叉问题,通常交易产生后,要等到5个以上的区块被确认,才能保证交易在最长的区块链上,相关信息不会再次改变。

第三点,“时间戳”,是矿工将这笔交易打包上链的时间。时间以UTC(协调世界时)表示,与台湾相距8小时。

比特币是如何工作的

第四点“发件人地址”表示本次交易的发送地址。

第5点,“收款地址”,表示这笔交易的金额将由哪个地址收到。

第六点,“交易金额”,表示本次交易转了多少以太币,按照检查时的现价折算。

第7点“手续费”,以太坊的交易必须由矿工打包后上链,所以需要支付矿工手续费。一般的以太坊转账交易会使用 21,000 Gas(燃料),可以理解为点对点网络花费了多少资源来做这笔交易的计算。

[注]以太坊交易手续费公式:

Tx Fee(7手续费)= Gas Used(7-2燃料消耗)* Gas​​ Price(7-3单位燃料价格)

比特币是如何工作的

打个比方,可以理解为从台北开车到台中的燃油成本:“汽油成本=使用升数*每升油价”

而 Gas Limit 更像是您出发前需要添加多少升汽油。如果您没有为旅行加满足够的油,那么旅行(交易)将失败。

发送交易时,部分钱包的 Gas Price & Gas Limit 可以自行设置。基本上,Gas Limit 应该大于交易所需的金额,并且交易不应该失败。需要注意的是,如果由于以太坊Gas Limit设置不足导致交易失败,仍将收取手续费,不予退还。 (因为矿工仍然会花费资源来帮助你忘记)

由于交易的 Gas Used 仅在矿工实际执行计算时才确定,因此 Gas Price 成为向矿工支付多少费用的决定因素。原则上,手续费越高,矿工在链上打包的优先级越高,交易等待时间越短。由于以太坊上的交易量会随着时间的推移而变化,如果你想了解目前的情况并决定设置多少费用,你可以去以太坊加油站查看。

第八点“Nonce”,目前没有统一翻译,我个人认为可以理解为一个序列,前面的值“22954”表示这个“发件人地址”截至本次交易已经发送了22954笔交易交易。

末尾的值“210”表示本次交易是本次“in block”中的第210次交易。

比特币是如何工作的

第9点“附加说明”,你可以写附加文字作为本次交易的说明,同时也会涉及到以太坊和比特币最大的区别之一:智能合约,我们稍后会详述。

在介绍完以太坊中的交易之后,我们必须先说一下以太坊和比特币的结构,然后才能介绍比特币交易。因为比特币交易看起来有点特别,不像以太坊那么直观。

以太坊的结构类似于银行账户,具有记录每个账户和账户余额的数据库,账户余额通过交易进行更新。如下图所示,地址14c5f8ba在一次交易中向地址bb75a980发送了10个eth,所以交易后双方的ETH数量都更新了。

比特币的 UTXO 模型

但是,比特币采用了另一种架构,称为UTXO(Unspent TransacTIon Output,TransacTIon简称Tx),如下图所示:

我们可以想象比特币是一堆钱,而我们的地址更像是一把可以操纵这些钱堆的钥匙。您可以将成堆的钱放在一起进行交易;你也可以拆开一堆钱来交易。

比特币是如何工作的

每笔交易可以有多个输入(钱堆),也可以在交易后变成一个或多个新的钱堆。让我们直接看一下Blockstream比特币浏览器(比特币的区块浏览器,链上发生的任何交易一目了然)上的随机比特币交易:

普通的比特币交易

可以发现,这笔交易用了三个钱堆。推测这三个钱堆的主人可能想给别人发四个比特币,但是​​他要使用的前两个钱堆的总金额不到四个,所以我用第三个钱堆收集了四个并将其发送给其他人。多余的比特币会变成“未使用(unspent)”的钱堆回给主人。

打开Details查看交易详情,可以发现右下角#1钱堆有Unspent字样,交易完成后钱堆会退回到发送交易的地址。

另外,我们可以发现输入的三个钱堆,总金额为6.1446498 BTC;而这两笔钱的输出,总量只有6.1442275 BTC。中间有一个0.0004223 BTC的差异。原因是比特币交易需要向帮助验证打包和上链的矿工支付手续费,所以这个0.0004223 BTC就是交易手续费的金额。

UTXO的架构实际上解决了Account模型中同一个地址(账户)不能同时进行两次交易的问题(Account模型必须有一个序列比特币是如何工作的,即Nonce)。为了避免双花(Double Spending:同样的钱被花两次),Ether 会使用 Nonce 来标记每笔交易的顺序。如果同时发送多笔交易比特币是如何工作的,但其中一笔交易卡在前面,后续交易也会被阻塞。

比特币是如何工作的

比特币UTXO的架构可以同时进行多笔交易,一个地址可以“同时”将多笔钱堆发送到多个不同的地址,在同一个区块中,甚至在同一个交易中。可以同时交易多笔钱堆,让交易更有效率。 (虽然比特币生成一个区块仍然需要 10 分钟......)

至此,我们对比特币和以太坊的架构有了初步的了解。接下来,我们将介绍以太坊和比特币的核心区别:智能合约。让我们再次回顾比特币和以太坊的交易。

请记住,在以太坊交易的第 9 点中,有一个我们之前跳过的额外说明。其实这部分不仅可以作为附加说明,在以太坊上发布智能合约、操作智能合约,都必须通过该字段输入代码,由矿工执行。

其实比特币也可以在交易中进行附加备注,会在“OP_RETURN”字段中进行标注,但是比特币的附加备注字段不能解释为代码,所以只能在这里使用。就像交易记录一样。

结论

1. 以太坊采用 Account Model 架构;比特币采用 UTXO 架构。

2. 以太坊中同一个地址(账户)发送的交易必须有一个序列(Nonce);比特币是一种类似于钱堆的结构。

3. 以太坊可以在“输入数据”字段中输入代码来部署或操作智能合约;比特币只能在“OP_RETURN DATA”字段备注。