10 BTC-问答

发布时间 2023-05-02 12:40:44作者: YangYi215

《区块链技术与应用》课程链接:https://www.bilibili.com/video/BV1Vt411X7JF/?spm_id_from=333.337.search-card.all.click


10 BTC-问答

  1. 转账交易的时候,如果接收者不在线怎么办?

    没有影响。不需要接收者在线,转账交易在区块链上只是做一个记录。

  2. 假设全节点收到一个转账交易,有没有可能,转账交易的收款地址,是全节点之前没有听说过的?

    可能。比特币账户的创建不需要通知其他人。

  3. 账户私钥丢失,该怎么办?

    没有办法。钱就变成了死钱,永远取不出来。

    加密货币的交易所,是中心化的机构。在交易所开办账户,一般来说需要提供身份证明,这种情况下,比特币保存在交易所中,私钥是由交易所保管的。这种情况下,如果账户密码丢失,可以跟交易所联系。

    交易所缺乏监管,加密货币交易所被黑客攻击、监守自盗,如:Mt. Gox,曾是全世界最大的比特币交易所。

    冷钱包、硬件钱包比较安全。

  4. 账户泄露怎么办?

    赶紧把账上的钱转走。

  5. 转账的时候,把转账地址写错了怎么办?

    没有办法取消已经发布的交易,没有机制取消已经发生的交易。

    digital commitment:把一个事情的hash发布到区块链上,证明你在某个时间知道某个事情。

    Proof of Burn:

    脚本 OP_RETURN。

    或者 将比特币转到一个地址(随便hash出来的类似比特币地址的,没有人知道私钥),这样的钱也是死钱,钱永远不可能被取出来。【该做法不提倡,因为转账交易的输出,会用叫保存到全节点的UTXO中,全节点不知道地址是真的还是假的,不知道钱花不出去,所以必须永久保存,所以对全节点不友好】

  6. Proof of Burn 和 OP_RETURN 实际中是怎么操作的?既然 OP_RETURN 无条件返回错误,那么交易怎么合法?怎么可能被写道区块链中呢?

    交易的验证过程通过是上一笔交易的输出和该笔交易的输入进行拼接,进行验证,执行过程中不可以抛出错误。而OP_RETURN是写在当前交易的输出脚本中的,验证当前交易合法性的时候,不会执行这个语句。

  7. 挖矿,会不会有的矿工偷答案,收到区块之后,查阅nonce合法,然后作为自己的nonce发布?

    发布的区块中有一个CoinBase tx,收款人是收款人矿工的地址。这一项发生改变会改变Merkle tree root,导致nonce作废。每个矿工的nonce是和自己的收款地址绑定在一起的。

  8. 交易费是小费,怎么知道交易费该给那个消费?

    实现不需要知道那个矿工会得到交易费。


统计数据

区块链大小的统计数据:

UTXO集合的大小:

可能有的人的私钥丢失。

比特币矿池挖矿情况:

比特币的价格变化:

比特币市值变化:

比特币的交易量:

每天的交易数目:

每个区块的交易数量:

可以看到每个区块的交易远远没有达到上限。所以,很多人说1M的上限太小,真实的区块中,1M远远没有装满。