比特币理财的过程中,难免会出现双花的现象,一些用户因为经验缺乏就会因此踩雷,比特币双花问题是数字现金系统中的潜在问题,是指同一笔资金同时支付给两位收款方。如果当时用户交易时没有特别留意,发现问题后仅凭协议无法彻底解决该问题,毕竟用户无从验证自己收到的资金是否还曾经付给他人。
一、什么是双花问题?
在数字现金领域,必须确保特定的货币单元不可复制。如果Alice可以接收10个货币单元,并复制粘贴10次,然后自己拥有了100个货币单元,那么整个系统将土崩瓦解。同样,如果她能够将同一笔10个货币单元同时发给Bob和Carol,那么系统同样无法运转。因此,必须有合适的机制防止这种情况发生,才能确保数字货币正常运行。
二、如何防止双花问题?
相较于去中心化方案,中心化方式更具可行性。一般来说,这种方式需要设立监督者来管理系统并控制货币单元的发行和分配。作为解决双花问题的方案之一,大卫·乔姆(David Chaum)的eCash采用了中心化方式。
银行可以通过盲签名的方式向用户发行模拟现金的数字资产,用户之间可以进行匿名点对点交易。密码学家大卫·乔姆在1982年发表的《不可追踪支付的盲签名技术》论文中对此作了详细阐述。
在这种情况下,如果用户Dan希望收到100美元的数字现金,必须事先通知银行。如果他的账户有余额,那么会生成一个或多个面额较小的随机数(可以生成多个)。假设生成了五个面额为20美元的随机数。为了防止银行追踪特定的货币单元,Dan通过为每个随机数增加盲因子来混淆视听。
接下来,他将这些数据交给银行,银行会从他的账户中扣除100美元的余额,并对消息进行签名,证明这五个信息分别可以兑换为20美元。这时,Dan就可以使用银行发行的数字现金了。他去Erin的餐厅用餐,花费了40美元。
Chaumian eCash机制对于私人转账非常有价值。然而,eCash机制本身并没有防御能力,因为银行是中心化节点,一旦系统出现问题,就会造成全盘损失。发行的纸币本身没有价值,价值完全取决于银行愿意将纸币兑换成美元。客户受制于银行,必须依赖银行的信誉来运作资金。这正是加密货币旨在解决的问题所在。
三、总结
用户可以利用双花攻击篡改点对点电子现金系统,多次利用同一笔资金,谋取不当得利。以往由于这个问题不得不到很好地解决,该领域的发展一直裹足不前。
然而万幸的是,盲签名的使用成为中心化金融方案中一个令人瞩目的解决方案。紧随其后,工作量证明机制和区块链技术的发展催生出比特币这种强大的去中心化货币形式,继而又为数以千计的加密货币项目提供了灵感。