通往比特币的漫长道路
传统金融体系
现金体系:现金体系首先需要现金分配来触发,否则交易无法发生。
信用体系:信用体系不需要这样,但债权人需要承担债务人不偿还债务的风险。
两种体系的混合使用:现金可以让我们知道物品的准确价值。现金交易把物品的价值标上数字,即便使用信用,我们依然用现金来衡量所需偿还的债务金额。
网络信用卡的弊端
电子支付方式都可以根据信用和现金这两个基本概念进行分类。其中,比特币属于现金类。
信用卡交易是目前主要的线上支付方式。
使用PayPal,不需要提供给卖家你的信用卡信息和个人信息,规避了安全风险,保护了个人隐私。但增加了复杂性,需要另外开设账号。
安全电子交易协议(Secure Electronic Transaction,简称SET)体系的认证机制保证了安全性,但是获得认证的过程非常繁琐(要求服务商、商家和客户都获得认证)。
从信用到(加密)现金
现金体系需要启动自循环,但优势在于,它规避了买家拒不偿还债务的风险。
◊ 更好地确保了用户的匿名性,使用现金交易与银行无关,卖家也无须知道消费者的个人信息。而信用卡与个人信息绑定,因此,银行可以追查消费者的所有消费记录。
◊ 现金支持线下交易,无须致电第三方获得交易批准。
比特币没有这两个特点,但是具备类似功能:
◊ 它的匿名性比不上现金。用户在使用比特币支付时,无须使用自己的真实身份,但仍然可能被查出用户身份。
◊ 比特币并不完全支持线下交易。
双重支付(double spending)难题
我通过数字签名发放电子纸条,然而当收到表示一定金额的虚拟货币的数据时,人们可以复制该数据,然后传输给他人。
可能的解决方案是:我在发出的每份纸条上印上一串独特的序列号。当别人把纸条给你时,你检查一下我的签名,然后打电话给我,告诉我相应的序列号,询问印有这个序列号的纸条是否已被使用过。如果我告诉你没有,那你就可以放心地收下这个纸条。我会在账本上记录该纸条已被使用。
唯一的问题在于,因为难以匿名,它很难称得上是真正的现金。不管是发行还是兑现纸条,我都可以把序列号和个人信息一同记录在案。这也就意味着,我能够追踪你的所有消费行为。
盲签(blind signature)的解决方案保护了用户的匿名性:我给你一张纸条,你把它的序列号记录下来,并且不要让我看见。然后我再签名,并不需要知道它的序列号。选取一个较长、随机的序列号能够更好地保护你的利益,因为这样的序列号更有可能是独一无二的。
乔姆、菲亚特和纳欧尔复杂的加密机制:发行方在电子货币中以加密方式嵌入你的个人信息,除了你本人,任何人都无法解密。你用电子货币消费时,接收方会随机挑选一部分密码要求你解密,并将之记录下来。这种解密的内容不足以暴露你的身份。如果你用同一份电子货币双重支付,当两个接收方都去银行兑现时,银行可以把两份解密的信息合在一起,最终几乎可以肯定知道你的身份。
利用梅克尔树Merkel trees建立了可以分割电子货币的系统以及零知识验证zero-knowledge proofs的运用
比特币既支持用户和商家之间的交易,也支持用户和用户之间的交易。事实上,比特币体系并不把用户和商家区别开来。比特币的成功很大部分大概要归功于它对用户-用户间交易的支持。
凭空发行货币
要想创造一种自由浮动并且具有真实价值的虚拟货币,必须要设计出某种具有稀缺性的东西。其实,正是因为黄金和钻石的稀缺性,它们才会成为货币的储备。比特币体系中的“挖矿”就是这样,通过解决数学计算来赋予虚拟货币价值,保证了稀缺性。
哈希现金体系组织垃圾邮件
RSA加密系统
研究哈希现金之后我们发现,解决一系列数学计算题目的成本就是解决单个题目的简单叠加。但政府发行货币时,发行纸币的固定成本很高,但浮动成本很低。
维莱特和夏马尔想要设计的数学计算题目具有类似的成本结构,这样,发行第一个电子货币需要巨大的计算量,但接下来就会变得很简单。
把一切信息都记录在数据库账本中
时间戳是为了记录文件创建的大概时间。时间戳可以准确反映文件创建的先后顺序:如果一份文件比另一份文件更早创建,可以从时间戳中看出来。时间戳的安全性体现在文件的时间戳一旦生成,无法更改。
比特币从根本上融合了用数学计算来控制新币的产生和用安全的时间戳来记录交易信息并防止双重支付这两种思路。
在比特币体系中,解决数学计算并不构成货币,只是确保区块链安全,间接地在有限时间里创造新货币。比特币不需要被认证过的时间戳,它只是用时间戳来保存区块和交易的先后顺序。