区块链双重支出
双重支出意味着将同一笔钱花费两次。众所周知,任何交易只能以两种方式处理。
离线: 涉及实物货币或现金的交易称为离线交易。
在线: 涉及数字现金的交易称为在线交易。
让我们考虑以下示例:
您去餐厅订购了价值5美元的卡布奇诺咖啡。您以现金支付。 Restaurants的服务提供商立即确认您已经付款,并且您已收到咖啡以换取钱款。现在是否可以在其他地方花费相同的$ 5进行其他购买?答案是否。但是,如果答案是是,该怎么办?这意味着同一个人可以多次使用同一笔现金。这种类型的问题被称为双重支出问题。
以实物货币表示,再也不会出现双花问题。但是在类似数字现金的比特币中,可能会出现双重支出问题。因此,比特币交易有可能被复制和转播。这就打开了它的所有者可能将同一BTC花费两次的可能性。
比特币如何处理双重支出问题?
比特币如何处理双重支出问题通过实施确认机制并维护称为区块链的通用分类帐来解决问题。
让我们假设您有1个BTC,并尝试花费两次。您与爱丽丝进行了1个BTC交易。再次,您签名并发送相同的1 BTC交易给Bob。这两个事务都进入未确认事务池,该池中已经存储了许多未确认事务。未确认的交易是任何人都不选择的交易。现在,无论哪个交易首先获得确认并由矿工验证,该交易都将有效。无法获得足够确认的另一笔交易将从网络中撤出。在此示例中,交易T1有效,爱丽丝将收到比特币。
如果矿工同时进行两项交易会发生什么?
假设两个不同的矿工将同时采摘两项交易并开始创建区块。现在,在确认阻止后,Alice和Bob都将等待其交易的确认。首先验证哪个交易,首先验证,然后从网络中拔出另一个交易。
现在假设如果爱丽丝和鲍勃都同时收到了第一笔确认,那么将会有一场竞赛在爱丽丝和鲍勃之间开始。因此,从网络中获得最大确认次数的任何交易都将包含在区块链中,而另一笔交易将被丢弃。