数字货币的钱怎么防止被刷两次?
最近很多人问我一个问题:比特币这样的数字货币,为什么不会出现同一笔钱被花两次的情况?这个问题背后其实藏着数字货币最核心的技术挑战,今天就想和大家聊聊这件事。
你拿着手机银行转账,钱转出去就消失了,对方才能收到。但数字文件不一样,复制一个文件太容易了。如果数字货币只是电脑里的一串数据,我完全可以复制一份然后给别人,这样就能同时买两样东西,这就是"双花"问题。

过去二十年,很多数字货币尝试都死在了这个问题上。银行系统之所以能防止双花,是因为有一个中心化的机构在记账。但加密货币的核心价值恰恰在于去掉这个中间人,这就成了一个几乎无解的难题,直到中本聪的出现。
区块链的解决方案很简单粗暴:让所有人都参与记账。网络中每一台电脑都保存着完整的交易记录数字货币的钱怎么防止被刷两次?,当有人发起一笔交易时,全网都要验证这笔钱是否真的属于他。如果没有人承认这笔交易有效数字货币双花,那它就永远不会被确认。
比特币用了工作量证明机制。矿工们竞相计算复杂的数学题,谁先算出来谁就有权记录下一批交易。这种设计让双花攻击的成本高到难以承受,因为你需要控制全网一半以上的算力才能篡改账本, practically impossible for any single actor.