主页 > imtoken苹果地址 > 教你如何使用 Blockchain Bitcoin Block Explorer

教你如何使用 Blockchain Bitcoin Block Explorer

imtoken苹果地址 2023-02-23 05:56:39

在以太坊世界中,当我们发起转账交易时,可以通过Etherscan等以太坊区块链浏览器搜索查看交易的详细信息。 之前写过Etherscan使用的详细教程,那么今天,就来比特币的世界,学习如何使用Blockchain.info()查询比特币交易

前言

一、什么是UTXO机制

为了方便大家理解后续区块链上显示的内容,我们还是需要先说明一下UTXO机制,这也是比特币和以太坊的一个重要区别。 UTXO全称Unspent Transaction Output,是比特币交易的基本单位,是未使用的交易输出[1]。 UTXO是一定数量的比特币,不能被分割,不能被所有者锁定或记录在区块链中,被全网识别为一个货币单位[2]。

举一个很详细的例子来说明,小明的妈妈想买两瓶酱油,一瓶酱油的价格是6元,但是因为小明的妈妈需要在家做饭,所以委托小明去商店买东西,小明的妈妈给了小明一张10块钱,一张5块钱,一张1块钱,并承诺其中的1块钱是小明的“跑腿费”。 于是小明先“包”了1块钱,然后到店里,给了售货员15块钱,换了两瓶酱油,一共12块钱。 售货员取回3元钱,小明回家后将3元钱还给了妈妈。

在这个故事中,10元和5元属于小明妈妈的产出[注1],对于小明来说,他扮演的是矿工,所以小明妈妈给小明的1元就是矿工费,而对于店员来说,输入他的12元,返回的3元是小明妈妈的UTXO。

这里要提一点有意思的是,小明妈妈最初拿出的10块钱和5块钱是一个UTXO,是小明妈妈在买其他商品时找零钱得到的。 而且10元和5元都是不可分割的。 同时,如果一个 UTXO 大于一笔交易所需的金额,它仍然会被整体消费,但同时会在交易中产生一小部分。

比特币的使用情况_比特币钱包怎么使用_比特币客户端使用

图1-1

2. 比特币变更地址

在上面的故事中,有一个概念我们要着重说明,就是“变化机制”。 首先我们要知道找零地址可以是我们之前使用的地址(也就是转账地址),也可以是一个新的地址。 如果我们在转账的时候不设置零钱地址,那么所有的“零钱”都会支付给矿工。 在上面的例子中,如果小明的妈妈在小明买了酱油后忘记找小明要3块钱,那这笔钱会不会被小明“私吞”呢? 同样,如果你有100个BTC,转给朋友1个BTC后,忘记设置找零地址,那么剩下的99个BTC将免费赠送给打包交易的矿工。 听起来很可怕?

比特币客户端使用_比特币的使用情况_比特币钱包怎么使用

不过imToken用户不用担心忘记设置找零地址,因为imToken已经为你自动完成了这一切,即每次转账都会为你生成一个新的找零地址【注2】。

那么可能有人会问,为什么我们每次都需要生成一个新的地址来接收找零代币呢? 直接用原来的地址收零钱不好吗? 我们将在下面讨论这个问题。

基本的

3、如何查看转账地址信息

如果你对以上概念还有一点理解,没关系,我会通过实际操作来帮助你理解。 打开网站,输入您的BTC转账地址,点击搜索按钮进行搜索。

比特币客户端使用_比特币的使用情况_比特币钱包怎么使用

图 3-1

这里可以看到我当前地址一共收到了0.01个BTC(Total Received显示),但是由于我使用imToken发起转账交易,所以当前地址剩余的BTC为0(Final Balance显示)。

这里有个问题,我当前地址本来有0.01个BTC,但是我只转了0.001个BTC,为什么当前地址余额变成了0?

其实这就是文章开头提到的比特币UTXO机制。 为了安全和匿名,比特币可以在每次使用地址转移后将“零钱”转移到新地址。 可以看出,在图3-2的Transactions类中的下一笔转账交易中,其实有两个“接收地址”,一个是真正的转账目标地址,一个是找零地址。 但是我们不能仅从地址来判断哪个是找零地址,哪个是转账地址。 我们只能通过知道哪个是目标地址来判断哪个是目标地址,然后用排除的方法来判断。 但是通过我的测试,一般情况下,第一个是转账地址,第二个是找零地址(多次转账不合适)。

比特币的使用情况_比特币钱包怎么使用_比特币客户端使用

比特币客户端使用_比特币的使用情况_比特币钱包怎么使用

图 3-2

4、如何查看交易是否成功

如图4-1所示,我使用imToken中生成的BTC地址19Fbiok5SuP7YWReGDwMp

77tfx1vVDVih1 将 0.0009 BTC 转移到 1Aqyai7gLr44DPmPdW3S24YeEKfiiW9foV 地址。 此时交易为Unconfirmed Transaction转账,即还没有矿工确认包裹。 BTC和以太坊目前都是POW机制,即交易需要矿工打包确认。 不同的是,以太坊出块速度为15秒,而比特币需要10分钟。

比特币的使用情况_比特币客户端使用_比特币钱包怎么使用

图 4-1

我们一般认为一笔比特币交易确认需要6个区块确认,但一般情况下,只要看到1个区块确认比特币的使用情况,即1 Confirmation(如图4-2所示),就基本可以确认交易成功,也可以使用imToken查看余额变化。

比特币的使用情况_比特币客户端使用_比特币钱包怎么使用

图 4-2

5. 如何查看矿工费

比特币和以太坊一样,转账也需要支付足够的矿工费。 比特币的最小计数单位是“聪”(Satoshi,简称sat)。 事实上,在比特币的底层协议中,并没有对每笔交易的矿工费进行规定,只是要求地址中的总输入(input)不小于总输出(output),所以理论上,如果一笔转账交易不支付矿工费,也会被矿工打包,交易成功,但时间确实不确定,可能需要很多年。

比特币的使用情况_比特币客户端使用_比特币钱包怎么使用

目前,比特币的转账矿工费是根据交易数据字节大小和输入输出数量来确定的。 数据越大,交易量越大,矿工费越高。 通常,每笔交易的字节数在 200 到 300 字节之间比特币的使用情况,您愿意为每个比特支付的费用可以定制。 比如使用 imToken 设置 20 sat/b。 以图 5-1 为例。

比特币的使用情况_比特币钱包怎么使用_比特币客户端使用

图 5-1

这笔交易的数据大小是226字节,我设置的gas fee是20sat/b,所以我消耗的gas fee是gas fee = 226 * 20 * 10e-9,也就是0.0000452 BTC左右。

但实际上,大部分钱包服务商在计算用户交易矿工费时,都会提前进行预估,因此会存在一些偏差。

先进的

6. 从 -> 到 OR 输入 -> 输出

当用户使用区块链查询 BTC 交易时,他们会发现与使用以太坊有很多不同之处。 因为以太坊属于账户模型,是一个“From -> To”的结构。 当我们发起转账时,每个 Txid 包含一个支付地址和一个支付地址。

比特币不是这样,它是一种UTXO机制,即多个输入可以对应多个输出[注3],大家可以回忆一下我们开头讲的故事,小明的妈妈给了小明10块钱和5块钱,这个有两个输出,输入是12元,但是我们可以认为12元其实是多个输入,包括给买家的价格,给政府的税收,店铺的利润和成本等等。

比特币客户端使用_比特币的使用情况_比特币钱包怎么使用

图 6-1

比特币的使用情况_比特币客户端使用_比特币钱包怎么使用

所以我们在查询一笔BTC交易时,如果输入交易号查询,可能会有多个地址同时向一个地址发起交易,也可能一个地址同时向多个地址发起交易。 图 6-1 向我们展示了多个输出对应一个输入。

7.关于无法解码输出地址

当我们使用blockchain.info查询一些交易信息时,会发现如图7-1所示,有些接收地址显示为Unable to decode output address,但是看不到真实的接收地址。 那么这是怎么回事?

比特币客户端使用_比特币的使用情况_比特币钱包怎么使用

图 7-1

点击交易号进入交易详情,我们可以在Output Scripts中看到:

`RETURN PUSHDATA(32) [一些垃圾]`

该脚本以`OP_RETURN`开头,称为空数据输出,用于用户在区块链中存储任意数据。 由于这些输出数据不同于代币转账,它们不能被花费,因此脚本脚本无法对其进行有效评估。 但实际上,大多数此类数据输出都伴随着正常的传输输出。 例如,这有点像转账信息,如图7-2,当用户进行这笔0.577 BTC转账时,他可以将转账的一些信息写到交易“Alice发送给Bob”中。 但是这个信息不能被消费,所以会一直处于Unspent状态,会出现Unable to decode output address(无法解析输出地址)的情况。

比特币钱包怎么使用_比特币客户端使用_比特币的使用情况

图 7-2

8. UTXO 的好处

比特币的使用情况_比特币钱包怎么使用_比特币客户端使用

上面说到找零地址的时候,我们问了一个问题,为什么比特币每次转账都要设置一个新的找零地址。 事实上,中本聪在谈到隐私功能时提到了这一点:“作为额外的预防措施,用户可以为每笔交易生成一个新地址,以确保这些交易不被盗回给一个共同的所有者。” [4]

因此,比特币的 UTXO 机制更好地保证了比特币的匿名性。 如果我们看一个有多个输出的钱包地址,很难确定哪个是找零地址,哪个是接收地址,除非我们是当事人。

作者注:

注[1]:输入和输出是相互转换的关系,因为你当前钱包的余额是输入得到的,当你发起转账时,它就变成了输出。 所以输入和输出是一个抽象的概念。

注[2]:使用imToken时,如果使用助记词导入比特币钱包,则每次更改地址都是新地址。 如果通过WIF导入,即使使用明文私钥导入钱包,那么每次转账找零地址都是你当前钱包的地址,不会产生新的接收地址。

注[3]:这里所说的多输入对应多输出,可以是一输入对应多输出,也可以是多输出对应一输入,也可以是多输入对应多输出。

参考:

1.

2.

3.【比特币交易,同一个txid可以多次交易吗? - 区块链技术中文社区]()

4.