主页 > 华为手机怎么安装不了imtoken > 区块链比特币区块浏览器用户指南

区块链比特币区块浏览器用户指南

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

前言

1.什么是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. 比特币兑换地址

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

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

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

基本

3. 如何查询转账地址信息

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

比特币之父能不能随意制造比特币_马斯克叫停比特币买车 比特币跳水_如何查询比特币接收情况

图 3-1

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

这里有个问题,我的当前地址原来有0.01 BTC,而我只转了0.001 BTC如何查询比特币接收情况,为什么当前地址余额变成了0?

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

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

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

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

图 4-1

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

图 4-2

5. 如何查看矿工费

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

马斯克叫停比特币买车 比特币跳水_比特币之父能不能随意制造比特币_如何查询比特币接收情况

目前,比特币的转账矿工费是根据交易数据的字节大小和输入输出的数量来确定的。数据越大,交易次数越多,矿工费也越高。一般来说,每笔交易的字节数为200~300字节,您愿意为每比特支付的费用可以自定义,例如使用imToken设置20 sat/b,以图5-1为例.

图 5-1

本次交易的数据大小为 226 字节,我设置的矿工费为 20 sat/b,所以我消耗的矿工费为 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所示的情况。有些支付地址显示为无法解码输出地址如何查询比特币接收情况,但我们看不到真实的支付地址。那么这里发生了什么?

图 7-1

如何查询比特币接收情况_马斯克叫停比特币买车 比特币跳水_比特币之父能不能随意制造比特币

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

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

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

图 7-2 结论

8. UTXO 的好处

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

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

作者注:

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

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

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

参考:

1.

2. bitcoin.stackexchange.com/questions/64504/what-does-unable-to-decode-output-address-mean?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

3. 【对于比特币交易,同一个txid可以有多笔交易吗?- 区块链技术中文社区](bitshuo.com/topic/59a3e901acad6ff75e62978f)

4.