1 引言比特币是一种点对点的网络数字货币。
大部分文章都对加密协议做了很多描述,但还是省略了很多细节。
本篇文章的目的,是想用一种清晰、容易理解的方式来解释比特币协议背后的主要思想。
我们将从最初的原则开始,建立起对比特币协议如何工作的宏观理解,然后深入到细节,从比特币交易中检视原始数据。
以详细方式理解比特币协议是一项艰巨的工作。
相反,人们很容易把比特币看作是既定事物,对如何通过比特币致富更感兴趣,还有比特币是否是个泡沫,比特币是否有朝一日可能意味着税收的终结等等,这些问题都很有趣,但也严重限制了你的理解。
了解比特币协议的细节让我们有机会欣赏到其他方式无法触及的风景。
特别是,它是我们理解比特币内置脚本语言的基础,这让使用比特币创造新型金融工具(如智能合约)成为可能。
反过来,新型金融工具可以被用来创造新的市场,并促使新的集体行为成为现实。
挺有趣的哈!这篇文章的重点是解释比特币协议的细节。
要理解这篇文章,您需要熟悉公钥加密,以及与数字签名相关的概念,我会假设你对哈希概念有所了解。
这一切都不算困难。
这些基本概念可以在大学新生的数学或计算机科学课上获取到。
这些想法都很迷人,如果不熟悉这些概念,可以先花几个小时了解一下。
2 概念和基本内容比特币的基础是密码学,这似乎令人惊讶。
比特币不是一种货币吗?比特币不是一种发送秘密信息的方式吗?事实上,比特币需要解决的问题主要是确保交易的安全——确保人们不能相互窃取、彼此冒充等。
在原子世界中,我们通过锁、保险箱、签名和银行金库等设备来实现安全。
在比特世界里,我们用密码学来实现这种安全。
这就是为什么比特币在本质上是一种加密协议。
在这篇文章中,为了让大家容易理解,我的策略是逐步构建比特币概念。
首先,我会解释一种非常简单的数字货币,它基于显而易见的想法,我们称之Infocoin,以区别于比特币。
当然,我们的第一个版本的Infocoin会有很多缺陷,因此我们将经历几次Infocoin的迭代,每次迭代都只介绍一两个简单的新想法。
经过多次这样的迭代,我们将实现完整的比特币协议。
我们会重构比特币!这个策略比我一次性解释整个比特币协议要慢。
但是,尽管你可以通过这种一次性的解释来理解比特币的机制,但很难理解为什么比特币的设计方式是这样的。
较慢的迭代解释的优点是,它让我们对比特币的每个元素都有了更清晰的理解。
从表面上看,数字货币听上去是不可能的。
假设有个人(我们叫她Alice),她有一些想要花的数字货币。
如果Alice可以用一串比特数字作为货币,我们怎么能防止她反复使用相同的比特字符串,从而产生无限量的货币供应呢?或者,如果我们能以某种方式解决这个问题,我们怎么能阻止其他人伪造这样一串比特字符,并利用它从Alice那里窃取这些数字货币呢?为了把信息当作货币使用,这些是克服的众多问题中的两个。
(注:这也是为什么区块链第一次实现了不用中介掺合即可实现价值转移的原因,互联网的文章可以复制粘贴,比如蓝狐笔记的文章经常被人复制粘贴,并且修改文章,不标注来源。
但比特币你可无法复制粘贴,无法花两次三次。
)作为Infocoin的第一个版本,让我们找到一种方法,让Alice可以使用一串比特字符作为一种新形式的货币(非常原始和不完整的),这样至少可以保护她免受伪造。
假设Alice想给一个叫Bob人一个infocoin。
为了做到这一点,Alice写下了“我,Alice,给Bob一个infocoin”的信息。
然后,她使用一个私人加密密钥对消息进行数字签名,并向全世界公布已签名的比特字符串(顺便说一下,我使用的是大写的“Infocoin”,来表示协议和一般概念,小写的“infocoin”指的是货币的特定面值。
在比特币世界里,类似的使用是常见的,虽然不是普遍的)这并不是一个令人印象深刻的数字货币原型,但它确实有一些优点。
世界上任何一个人(包括Bob)都可以使用Alice的公钥来验证Alice是否真的是签署了“我,Alice,给Bob 一个infocoin”这句话的人。
没有人能创造出那个比特字符串(译注:这里可以理解为公钥签名),所以Alice不能转过身说“不,我不是想给Bob一个infocoin”。
所以协议规定Alice想要给Bob一个infocoin。
同样的事实是——没有人能写出这样一个签名的信息——也给了Alice一些有限的防伪造的保护。
当然,在Alice发表了她的信息之后,其他人可能会复制这个消息,所以在这种意义上伪造是可能的。
但从开始是不可能的。
这两种属性——对Alice的意图的建立和对伪造的有限保护——都是该协议的真正显著特征。
我还没完全说明这个协议中的数字货币是什么。
明确地说:这只是信息本身,即,这是一串代表数字签名信息的比特,“我,Alice,给了Bob一个infocoin”。
以后的协议也会类似,因为我们所有数字货币的形式都将是越来越复杂的信息。
3 比特币起源与发展史从比特币的本质说起,比特币的本质其实就是一堆复杂算法所生成的特解。
特解是指方程组所能得到有限个解中的一组。
而每一个特解都能解开方程并且是唯一的。
以钞票来比喻的话,比特币就是钞票的冠字号码,你知道了某张钞票上的冠字号码,你就拥有了这张钞票。
而挖矿的过程就是通过庞大的计算量不断的去寻求这个方程组的特解,这个方程组被设计成了只有2100 万个特解,所以比特币的上限就是2100 万个。
要挖掘比特币可以下载专用的比特币运算工具,然后注册各种合作网站,把注册来的用户名和密码填入计算程序中,再点击运算就正式开始。
完成Bitcoin客户端安装后,可以直接获得一个Bitcoin地址,当别人付钱的时候,只需要自己把地址贴给别人,就能通过同样的客户端进行付款。
在安装好比特币客户端后,它将会分配一个私钥和一个公钥。
需要备份你包含私钥的钱包数据,才能保证财产不丢失。
如果不幸完全格式化硬盘,个人的比特币将会完全丢失。
2008年11月1日,一个自称中本聪(Satoshi Nakamoto)的人在P2P foundation网站上发布了比特币白皮书《比特币:一种点对点的电子现金系统》[6] ,陈述了他对电子货币的新设想——比特币就此面世。
2009年1月3日,比特币创世区块诞生。
比特币用分布式账本摆脱了第三方机构的制约,中本聪称之为“区块链”。
用户乐于奉献出CPU的运算能力,运转一个特别的软件来做一名“挖矿工”,这会构成一个网络共同来保持“区域链”。
这个过程中,他们也会生成新货币。
买卖也在这个网络上延伸,运转这个软件的电脑争相破解不可逆暗码难题,这些难题包含好几个买卖数据。
第一个处理难题的“矿工”会得到50比特币奖赏,相关买卖区域加入链条。
跟着“矿工”数量的添加,每个迷题的艰难程度也随之进步,这使每个买卖区的比特币生产率保持约在10分钟一枚。
2009年,中本聪设计出了一种数字货币,即比特币,风风火火的比特币市场起了又落,而其创始人“中本聪”的身份一直都是个谜,关于“比特币之父”的传闻牵涉到从美国国家安全局到金融专家,也给比特币罩上了神秘光环。
据外媒报道称,计算机科学家TedNelson周日在网络上发布视频称,他已经确定出,比特币的创始人是京都大学数学教授望月新一(Shinichi Mochizuki)。
比特币的创始人一直以来使用的都是中本聪(Satoshi Nakamoto)的假名,互联网领域也对其真实身份展开了大量推测。
纳尔逊发布视频称,他已确定望月新一就是比特币的真正创始人。
望月新一2013年因为证明ABC猜想而名声大噪。
他高中时就读于菲利普埃克塞特学院,后者是美国最具声望的高中之一,仅仅两年后就毕业。
望月新一16岁进入美国普林斯顿大学,22岁时以博士身份离校,33岁就成为正教授,这么年轻就获得正教授职称在学术界极为罕见。
这个数学界的巨星可能已经攻破了该领域最为重要的难题之一。
中本聪本人在互联网上留下的个人资料很少,尤其是近几年几乎完全销声匿迹,因此其身世也变成了一个迷。
2014年3月7日,当有人说比特币创始人是多利安·中本的新闻传出后,迅速成为互联网上最吸引人的消息。
与外界揣测其可能是个虚构的名字不同,“中本聪”是个真实的名字,他是一名64岁的日裔美国人,他喜欢收集火车模型,曾供职大企业和美国军方,从事机密工作。
在过去的40年中,中本聪从不在生活中用他的真名。
根据美国洛杉矶地方法院1973年的档案,在他23岁从加州州立理工大学毕业时,将自己的名字改为了多利安·普伦蒂斯·中本聪(Dorian Prentice Satoshi Nakamoto)。
从那时起,他不再使用“聪”这个名字,而用多利安·中本S(Dorian S. Nakamoto)作为签名。
也是在2014年,真正的发明人中本聪在网上发言否认:“我不是多利安·中本。
”4 比特币与传统虚拟货币比较基于网络社区中虚拟商品制造、交流、支付和使用,对网络的依赖,形成了虚拟世界独特的“分享型经济”,大量用户在网络市场交易商品,虚拟货币在此基础上应运而生。
欧洲中央银行根据虚拟货币和实体经济互动程度,将虚拟货币分成三类:第一类是封闭性虚拟货币。
几乎与实体经济无联接,用于游戏中各种游戏币,如暴雪娱乐的魔兽金币。
第二类是单向流入虚拟经济的虚拟货币。
按照买进汇率,现金兑换虚拟货币后,可以购买虚拟商品和服务,虚拟货币一般不能购买实体商品或服务,个别例外可购买实体商品或服务,如Second Life发行Linden Dollars,Facebook 发行FacebookCredits,亚马逊公司发行亚马逊币,腾讯发行Q币。
第三类是双向货币流的虚拟货币。
按照买进卖出汇率,用于买卖虚拟及实体商品、服务,如比特币。
本文把第一类、第二类虚拟货币统称为传统虚拟货币。
比特币与传统虚拟货币不同之处在于(见表1):第一,发行方式不同。
传统虚拟货币有发行主体,其使用范围主要局限在各个网络公司,如LindenDollars用于支付林登实验室提供的游戏和业务。
比特币没有发行主体。
第二,监管体系不同。
我国已经把传统虚拟货币纳入第三方监管体系,给第三方支付发放牌照,对传统虚拟货币交易征税,受到中央银行和政府虚拟货币管理政策、法律和法规的约束。
若购买传统虚拟货币的数额增大,滞留在网络公司的真实货币增多,给现实经济带来隐患,政府监管措施可以影响传统虚拟货币的发展。
而比特币由比特币网络所有节点集体管理,很难了解比特币的交易情况,对传统虚拟货币的监督方式很难应用于比特币,比特币交易很难征税。
第三,匿名程度不同。
传统虚拟货币依靠账号系统,掌握交易双方个人信息进行交易。
比特币不依靠账号系统,交易双方公开密钥信息进行交易,可以通过不断变换收款地址,隐匿真实身份。
第四,价值不同。