比特币被双花了吗?
7号比特币在高度788686发生了一次2个区块的临时分叉。竞争发生在Foundry USA和AntPool两个矿池之间。根据ForkMonitor的监测[1],Foundry USA在AntPool之后报告了分叉的区块。
在讨论比特币出块问题时,我们要格外注意“时间”概念。比如,上面的话里,所谓的“之后”就是一个时间概念。说Foundry USA在AntPool之后报告,只是ForkMonitor收到他们双方发出的区块数据的时间先后。收到来自Foundry USA的区块的时间是20:47:33,收到来自AntPool的区块的时间是20:45:24。
但是这并不意味着,全世界其他地方的节点,都是先收到AntPool的数据,后收到Foundry USA的数据。这可能受到互联网联网环境的诸多影响。因此,我们并不能根据接收到区块数据的先后来决定采用谁的区块。因为,这个“先后”是没有共识的。有人看到Foundry USA在先,有人看到AntPool在先。
那怎么办呢?有读者可能会说,那我们看一下他们各自报告的区块里记录的出块时间戳呢?让我们来看看。有趣的事情来了。虽然Foundry USA后报告了区块,但是它报告的区块时间戳却比AntPool的早。Foundry USA的区块时间戳是20:45:10,而AntPool的是20:45:13。
甚至我们用主动语态来描述这个事情也扭曲了客观事实,因为“Foundry USA报告的区块”(the block Foundry USA reported)这样一种表达暗含了Foundry USA有意为之的意思,而这一层意思属于主观观点,并非客观事实。思考难免要借助于语言,而语言会反过来让思考陷入误区。能够始终准确分辨主观观点和客观事实,是很重要的,有时候也是困难的。此处,用被动语态表达可能会更准确,即表述为“从Foundry USA收到的区块”(the block received from Foundry USA)。
好了,来自Foundry USA的区块时间戳比AntPool的早3秒钟,但是到达的时间却晚了2分多钟!
那么我们是否可以按照它们各自报告的区块时间戳的早晚来决定采用谁的区块呢?显然也不能。因为区块时间戳是出块的矿池可以在代码约定的范围内随意设置的,那么也就是不完全可信的。这也不是共识。我们的意思并不是谁在故意篡改时间戳,我们只是说这是很容易做到的。比如Foundry USA在20:47:00产生了区块,但是却把区块时间戳写成20:45:10,这是可以做到的事情,没有谁能够阻止。
所以,我们并不能尽信产生区块的矿工记录的区块时间戳。
中本聪告诉我们,在去中心化的情况下,我们唯一可以相信的,是投入算力计算出来的工作量证明(Proof-of-Work)。这就是比特币所采用的最大工作量证明链共识原则,或者简称为最长链原则。
在上面的案例中,最终AntPool的分叉打败了Foundry USA的分叉,获得了全网算力的支持,快速超越Foundry USA分叉的长度,淘汰了后者产出的2个区块。
图:分叉
当然,被Foundry USA打包在这两个区块中而未被AntPool分叉所包含的交易,就会被退回到待打包交易池中,重新等待打包。只需要再等待一段时间,总会有矿工将其打包到区块链中的。
整个过程没有任何问题,完全符合比特币的工作原理。唯一有问题的,可能是不懂这个工作原理,而把交易出现在两个临时分叉中误称为“双花”(双重花费,double-spending)。这实在是对于这个概念的误解。
真正的“双花”,是付款方发出两个交易,花费同一笔比特币(同一个UTXO)。一个交易把比特币UTXO付给收款方,另一笔交易把同一个UTXO付给自己。让第一笔交易进入Foundry USA的分叉,另一笔交易进入AntPool的分叉。待Foundry USA的分叉出现了一个区块确认后,告诉收款方,“嘿老兄,币已付”。然后坐等Foundry USA的分叉被淘汰,AntPool的分叉胜出,从而实现撤销掉给付款方的支付,而把币回收到自己的口袋里的效果。
一看便知,这是很不容易做到的。
至于有交易所采用极少区块确认就给充值用户上账,而且也不检查UTXO,看到一次链上充值交易就上一次账,从而导致多给用户记了余额,那纯粹是自己找抽,怪不得比特币。
参考资料:
- [1] https://forkmonitor.info/stale/788686
(公众号:刘教链。知识星球:公众号回复“星球”)
(免责声明:本文内容均不构成任何投资建议。加密货币为极高风险品种,有随时归零的风险,请谨慎参与,自我负责。)
比推快讯
更多 >>- Hyperion Decimus推出加密基金HD CoinDesk Acheilus
- 香港金管局:中交建工4家银行为香港数字人民币钱包运营机构
- Art Blocks宣布推出Ark Blocks Studio,以支持艺术家根据合约自主发布NFT
- Radiant DAO批准在Arbitrum和以太坊主网上整合新的weETH市场
- FTX Digital:客户提交索赔截止日期预计将延长至7月底或8月初
- 链上索引服务Subsquid完成总额1750万美元融资,DFG等参投
- 区块链数据追踪及分析平台Chainalysis完成新一轮融资,Haun Ventures参投
- 机构级加密货币和数字资产平台Fireblocks完成新一轮融资,Haun Ventures参投
- Popsicle Network与MultiAdaptive共同推出首个Solana VM rollup开源技术框架
- 法国金融市场管理局再次警告投资者Bybit已被其列入黑名单
- 美联储Bostic:年底前降息可能是合适的,但没有任何确定的计划
- pump.fun:已升级合约并暂停交易,攻击者无法窃取更多资金
- 彭博社分析师:超400家机构披露持有贝莱德现货比特币ETF,这数字“非常罕见”
- Wintermute研究主管:pump.fun疑似私钥泄露被攻击,2000枚SOL和大量meme币被盗
- Pump.fun 攻击者疑似利用被盗资金随机空投
- Solana 代币启动器pump.fun疑似遭闪电贷攻击
- 美国银行:仍预计美联储将在12月首次降息
- 比特币向下触及65000美元,日内跌1.85%
- 美联储Mester :尚未就央行数字货币作出决定
- 美参议院投票通过撤销有争议的 SEC 会计公告
- Magic Eden:钱包内的代币申领产品将于第三季度推出
- 美国财政部拟继续加强围绕数字资产的反洗钱和反恐融资工作
- 美联储梅斯特:当前的紧缩政策将有助于降低通胀
- 4月份Robinhood加密货币交易量为101亿美元,环比下降一半以上
- WallStreetBaby部署者通过交易WSB在1小时内赚取近5000枚SOL
- Cumberland从Tether Treasury收到2000万枚USDT,并存入交易所
- 香港证监会允许在符合条件下投资海外上市ETF
- Deribit:明日将有约 21.3 亿美元的BTC和ETH期权到期
- 摩根大通:目前比特币矿工的挖矿成本约为 45,000 美元
- Bybit:正在开发为香港用户量身定制的Bybit HK应用程序, Global Bybit App 将停用
- 某巨鲸从 Aave 取出 3886 ETH ,换成 173.3 WBTC 以偿还借款
- Uniswap App已支持从Coinbase和Robinhood直接转账
- CZ尚未入狱,入狱开始时间需等缓刑或审前服务办公室通知
- Bybit联创:100%的NOTcoin空投已到账,将为所有受影响用户发布公开声明和赔偿计划
- 游戏平台Param Labs完成700万美元融资,Animoca Brands领投
- 微软正密切关注加密行业,高管称目前只接触到Crypto和AI“皮毛”
- 灰度向“bc1q2j”开头地址转入700枚BTC
- Upbit运营商Dunamu一季度营收达3.95亿美元,同比增长74%
- 美国至5月11日当周初请失业金人数22.2万
- 印度证交会主张与多机构共同监管加密货币
- Multipool完成60万美元新一轮融资
比推专栏
更多 >>观点
项目
比推热门文章
- Hyperion Decimus推出加密基金HD CoinDesk Acheilus
- 香港金管局:中交建工4家银行为香港数字人民币钱包运营机构
- Art Blocks宣布推出Ark Blocks Studio,以支持艺术家根据合约自主发布NFT
- Radiant DAO批准在Arbitrum和以太坊主网上整合新的weETH市场
- FTX Digital:客户提交索赔截止日期预计将延长至7月底或8月初
- 链上索引服务Subsquid完成总额1750万美元融资,DFG等参投
- 区块链数据追踪及分析平台Chainalysis完成新一轮融资,Haun Ventures参投
- 机构级加密货币和数字资产平台Fireblocks完成新一轮融资,Haun Ventures参投
- Popsicle Network与MultiAdaptive共同推出首个Solana VM rollup开源技术框架
- 一场自导自演的控盘大戏?解读 AEVO 上线两个月间的抓马故事