【问题标题】:How does a transaction complete in bitocin?比特币交易如何完成?
【发布时间】:2017-10-31 05:54:56
【问题描述】:

如果 B 将比特币转移给 C,那么 C 什么时候会收到比特币?是不是所有矿工都将该交易添加到他们的本地分类账中? (我觉得比较费时间,如果有些矿工不加会怎么样?) 现在,如果一些矿工发现交易无效,而另一些矿工发现交易有效,那么这种情况会是什么情况? C什么时候收到比特币?

【问题讨论】:

    标签: bitcoin blockchain bitcode blockchain.info-api


    【解决方案1】:

    区块链是一个公共分类账,所以 B 不只是将交易发送给 C,B 向公共网络中的每个人宣布我正在向 C 发送比特币。所以网络中的每个人都可以看到这个交易并且现在必须等待被包含在一个块中。

    矿工创建交易区块,每 10 分钟将一个新区块包含到分类账中。他们必须以网络其他部分接受它们的方式创建它们。要求之一是区块中的交易都是有效交易。所以是的,矿工将在将交易添加到区块之前验证 B 是否已将比特币发送给 C。

    由于比特币区块链中的所有全节点都知道B持有的比特币的当前状态,它们可以很容易地验证交易的有效性。

    注意:区块链中的每个节点要么接受或拒绝交易。

    以下是您可能想要查看的详细信息

    https://en.bitcoin.it/wiki/Protocol_rules#.22tx.22_messages
    

    【讨论】:

    • 谢谢你的回答,但是C什么时候会收到amount./bitcoin?当所有矿工都接受它?并考虑有 10,000 名矿工,那么所有 10,000 名未成年人都必须接受它。不会花时间吗?
    • 而且根据你的回答,好像每笔交易都会在10分钟内完成。
    • 每 10 分钟创建一个块。您的交易可能在该区块内,也可能不在该区块内。所以,如果它不在块内,你应该等待
    • @PJR 否每笔交易未在 10 分钟内完成,每 10 分钟创建一次块。然后这些块得到验证,并且随着当前块顶部的块数量被添加,交易开始得到确认。例如如果在包含 B 事务的 Block 之后添加了 10 个块。那么确认的数量将是 10。此外,一旦矿工在数学上验证了一个区块或交易,它就会将其发送给网络中的所有矿工以交叉验证解决方案。如果超过 51% 的矿工同意将被视为有效交易的解决方案
    【解决方案2】:

    C 什么时候收到比特币?是不是所有的未成年人都加了 该交易进入他们的本地分类账?

    每个未成年人都在尝试挖掘一个区块。当有人挖出一个区块时,该区块会沿着网络分布。所以,每个矿工都会得到那个区块。在一个区块中,会有一些交易。

    但是,可以同时开采另一个区块。同时收到多个区块的矿工将继续沿着分支进行挖矿。因此,一段时间后,其中一个分支将获胜。

    因此,当在该块之上还有 100 个新块(我不确定它们是否为 100 或更少)时,交易才有效。

    如果一些未成年人不添加会怎样?

    一段时间后,所有的Minor都会就分支达成共识,所有的Minor都会拥有相同的区块。

    如果一些未成年人发现交易无效,而有些人发现它 有效,那么在这种情况下会发生什么情况?

    当矿工收到一个区块时,验证所有交易是否有效。如果不是,它会向其他矿工发送一条消息,告诉他们该区块无效。

    交易的结果(有效或无效)对网络的所有成员都是一样的。

    【讨论】:

    • 谢谢你的回答,但是C什么时候会收到amount./bitcoin?当所有矿工都接受它?并考虑有 10,000 名矿工,那么所有 10,000 名未成年人都必须接受它。不会花时间吗?
    • C 立即收到该金额,但直到在其上方创建 100 个块时它才能使用该金额。所有矿工都有相同的链,所以最后每个人都验证并接受它。我不知道每个对等方接受交易需要多长时间,但是,直到在其上方创建 100 个区块后,它才会生效。
    猜你喜欢
    • 2014-01-22
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 2021-04-15
    • 1970-01-01
    • 2022-07-19
    • 2017-03-11
    • 2016-01-09
    相关资源
    最近更新 更多