首页 » 电子货币

BitCoin/BTC/比特币

BitCoin的几个基本概念:

BitCoin - 比特币,缩写为BTC,它的货币符号是฿。以下所有的讨论都围绕比特币展开。

blocks - 块。块中包含了BitCoin的交易记录等信息。通过生成block来获取BitCoin。生成block也叫mining(挖矿)、挖矿的人也叫miner(矿工)。生产1个block奖励50个BitCoin,每四年减半,2013年开始奖励25BTC,2017年开始奖励12.5BTC。按BTC协议,平均10分钟生成一个block。

p2p - p2p表示Peer to Peer,个人对个人。比特币是一种去中心化的虚拟货币,它的对立面就是中心化的货币,例如各国中央银行发行的法定货币。BTC网络是一个p2p网络(我们最熟悉的p2p网络是下载/视频领域的软件,如电驴),但与其他p2p网络不同的是,在这个p2p网络中,参与的人越多,赚钱BTC的速度就越慢。

矿池 - 起初用Intel/AMD的CPU就可以生成block了(挖矿)。随着挖矿人数的增多和设备性能的提高,使用CPU挖矿早已过时。2013年初,矿工逐渐采用GPU/FPGA等挖矿。ASIC(特定用途集成电路)设备也在2013年中旬大量上市。2013年7月后,GPU/FPGA设备也无济于事,几近无收益状态。2013年9月平均算力(计算能力)估计,针对个人开发的小型ASIC挖矿设备很快也无收益。集群式ASIC挖矿设备将垄断BTC网络。在单打独斗收益越来越低的情况下,矿池就是将这些散户汇集在一起,合力挖矿,然后矿池给予矿工一定比例的分成。

发行量 - BTC的生成曾递增趋势,但增长速度逐年放缓。到2140年时达到2100万个的极限。也就是说BTC的发行量为2100万个。

手续费 - BTC几乎不存在交易手续费,无所谓跨行、跨境交易。只有数额较大的交易,才需要支手续费。但随着BTC生成数量的下降,可以预期手续费将成为挖矿的主要激励。

比特币的单位

单位说明
1比特币 BitCoin/BTC
0.01比特分 Bitcent/cBTC
0.001毫比特 Milli-BitCoin/mBTC
0.000001微比特 Micro-BitCoin/μBTC
0.00000001聪 satoshi (基本单位)比特币的创始人叫中本聪

比特币的增长曲线。通过这个曲线可见,最后BTC的数额会无限趋近于21,000,000 BTC(2千1百万BTC)。

BitCoin Time Graph

比特币的基本原理

以下笔记主要来自云风的Bitcoin 的基本原理

每小时生成6组新的BTC,一组50个,也就是每小时生成300个BTC。比特币的p2p网络通过自动调整难度来限制产量。

每个账户都是一对公私钥,账户主人持有私钥。A要给B转账,A就把钱数加上B的公钥,并用自己的私钥加密。B收到账单后用A的公钥解密,可以看到A的确给他转了如数的BTC。这笔交易需要一个见证人,担保交易发生过,而担保人就是整个BTC网络。过程是这样:当A发起交易时,就必须把签名后的交易单尽可能地广播到p2p网络上;而B则会从p2p网络上不断收到别人的确认信息。当B收到足够多的确认信息后,就可以确认A的确发起了这笔交易。

p2p网络上的每个节点都记录了BTC自诞生以来的每笔交易单。p2p网络并不记录每个账户的余额,而是通过自BTC诞生以来的每笔记录,推算出每个账户中是否有足够的余额来进行交易。核心问题是:如何避免一笔钱被支出2次。

整个账单环环相扣。全局的账单序列叫做chain of blocks。每个block里包含多条经过确认并hash签名(难以伪造)的交易记录,且每个block都和全局表的上一个block关联。每个交易账单会通过p2p网络扩散,而p2p中的节点收到账单后就会把它收到的多个账单记录制作成一个新的block。制作新block的过程就叫mining(挖矿)。只有极其稀少的概率能制作成一个新的block,而一旦制造成功,其制造节点就会把新block广播出去。

问题的关键在于p2p网络中有许多人同时在制作新的block,但有一个排序机制保证只有最优的那个新block能被网络群体所接受,挂在全局的blocks链上。全局blocks链会越来越长,在最新的部分可能存在许多分支。[分支这部分不理解]

制造出新block并获取最终认可的那个节点,会被赐予50BTC作为奖励,这个规则为所有BTC用户所认可,这就是所谓的mining(挖矿)。为了保证mining的过程消耗大量CPU时间,并只有很小几率成功,BTC网络中用到一个叫做Hashcash的系统,它最初是为了改善email spam(垃圾邮件)的问题而被发明。

Hashcash的核心思想是:给一段特定信息(如email从A发给B)加一个特定的hash头。而这个hash头需要大量的CPU时间计算出来,发垃圾邮件的人没那么多CPU时间为发送的每一封邮件计算出一个符合要求的hash头,因此可以认为有这个hash头的邮件不太可能是垃圾邮件。什么hash头要很长时间才能计算出来呢?例如要求这个hash值必须以一长串0打头(具体多少个决定了该hash值的生成难度)。总结:为你的信息找到一串数字,附加上去后,使用某种hash算法,算出一个hash值,且这个hash值以一长串0打头。

目前除了暴力尝试外没有更好的办法。每个想通过mining赚钱的人,从BTC网络中监听数据,如果有人发布了新的合法的block,他就合并到本地的全局表里,重置自己的计算过程。如果有新发布的交易单,也保存下来。不断把最新的block的hash值、新收到的交易单、自己获得的50BTC合并在一起,计算出SHA-256,看结果是否满足条件。一旦满足就立即发布出去,但有足够多的人认可它(以它为基础计算后面的block),这个节点就真正的获得了那50BTC的奖励。

所有BTC客户端都被设置为210,000个blocks。系统自动调节block生产难度,但大约为10分钟一个。

以下笔记来自阅微堂(bitcoin的技术原理)。

BTC网络中使用SHA-256算法。公钥体系的算法用ECDSA(Elliptic Curve Digital Signature Algorithm),而非常见的RSA。

每个BTC地址是一串以1打头的字符串。一个BTC账户由一对公私钥唯一确定,用户要保存好私钥。

交易信息分为2类。一类为“验证过”的交易,保存在blocks里,每个block的信息是前一个block的ID和新增的交易信息:

block_id = hash(hash(block))
block: pre_block_id + new_transactions(包括奖励的X个BTC)

另一类是还“未验证”的交易信息,即刚收到的交易。当节点收到新交易信息后(可能是多条),由于节点保存着所有历史交易,因而可以推断出付款者余额是否足够。在剔除掉无效交易信息后,就可以生成新block了。2013年5月时要求hash值前13为1。只有后续block最多的那个block有效。

当累计有6个blocks包含一笔交易时,就认为该交易信息被“验证过”,从而可以确认交易成功。

比特币的历史

以下笔记主要来自《比特币矿业史》,作者是42qu.com和42btc.com的创始人兼程序员张沈鹏。

2013年5月19日,中国比特币节点85,220个,雄居世界第一,占比22.8%。

Hayek - 1974年诺奖经济学奖得主,最后一本著作《货币的非国家化》,其革命性的建议:废除中央银行制度,允许私人发行货币,并自由竞争。

1982年,David Chaum提出不可追踪的密码学网络支付系统。8年后,他将此想法扩展为密码学匿名现金系统Ecash。

1998年,Wei Dai的论文阐述了一种匿名的、分布式的电子现金系统b-money。与此同时,Nick Szabo发明了bitgold,提出工作量证明机制,用户通过竞争性解决数学难题,然后将解答的结果用加密算法串联在一起公开发布,构建出一个产权认证系统。Hal Finney则把该机制完善为一种“可重复利用的工作量证明”。

2008年11月1日,一个自称中本聪(Satoshi Nakamoto)的人(此人至今仍是个迷),在一个密码学邮件组中提出了比特币,阐述了他对电子货币的新构想。这份邮件引起了上文提到过的Hal Finney的注意。Hal在密码圈成名已久,是PGP加密的作者之一,也曾构想过基于密码学的货币,曾创造过一种基于计算工作量的货币,名为RPOW。

2009年1月3日,中本聪发布了bitcoin客户端第一版。Hal立即尝试了这个软件,也被猜测为中本聪外第一个运行比特币客户端的人。Hal开采了70个block,并创造了第一笔比特币的交易 - 中本聪转给Hal 10个币作为测试。接下来的几天里,Hal通过邮件向中本聪报告不少Bug,然后中本聪将它们一一搞定。

此后,比特币客户端运行稳定。在接下来的几周里,Hal开采了几千个比特币。同时,Hal觉得比特币客户端导致计算机滚烫且风扇噪音使他很不舒服,因此他关闭了比特币客户端的运行。(下文还有Hal与比特币的传奇故事)

2010年5月21日,一位昵称为laszlo的人在论坛上出售10,000个比特币,要加50美元。没人买。但有人原意用25美元的比萨饼优惠券兑换这10,000个比特币。按2013年5月的市价,这些比特币价值约8千万人民币。

2011年5月29日,海盗湾创始人Rickard Falkvinge写了一篇文章《为什么我把我所有的积蓄全部投入BitCoin》,并声张了自己对比特币的狂热。他写道:

在过去十四个月里,BitCoin对美元的汇率增加了一千倍。是的。再读一遍:一千倍,十四个月。目前还没有迹象表明它将停止或已经饱和,恰恰相反 ... 我预测,在未来的几年内它的价值还会至少有一千倍的增加,而且这只是保守计算。

自2010年4月到2011年6月,比特币在14个月内暴涨1,000倍。有人感叹道:本来钱足够在北京买套房,结我只用它买了辆车。

比特币的生产:CPU -> GPU -> ASIC(Application Specific Integrated Circuit,特定用途集成电路)。官方客户端自0.3.22版起,宣布取消自带的CPU挖矿功能。而ASIC挖矿比显卡挖矿快上百倍。mining是挖矿之意,而miner指矿工。

ASIC制作昂贵。首先是BFL(蝴蝶实验室)开始接受ASIC订单,采用65纳米技术。募集了大量资金,但研发进展缓慢。8个月后在CES上展示了ASIC原型机的机箱。众人不满。

2012年8月9日,深圳某公司发言人“烤猫”在bitcointalk发帖,声称自己的团队能研发ASIC矿机,面向全球以比特币方式募股,筹集启动资金。股份很快被哄抢。2013年1月3日,矿机样机问世并稳定运行。烤猫样机发布17天后,中国的阿瓦隆Avalon团队完成了首个样机的交付。

Avalon由“南瓜张”博士负责研发(是年28岁,北航在读博士)。Avalon的霸王条款,以及南瓜张的嚣张签名:欲借汝头,汝妻子吾自养之,汝勿虑也(曹操语)。

2012年底,比特币产量首次减半。塞浦路斯金融危机让比特币大出风头。随着政府对银行储户征税,同时施加严厉的资本管制,人们疯狂寻求资金出路。美国试图封杀维基解密的比特币帐号,至今没有成功。

量子计算机,比特币的密码学基础威胁。银行亦不能幸免。2007年,D-Wave公司开始研发量子计算机。2013年Google采购D-Wave量子计算机,创办量子计算实验室。一台量子计算机大约价值1,500万美元。

51%的攻击。所谓51%是指如果某人拥有了超过全网51%的运算能力,那他就可以任意修改比特币的全局账单。

Hal和比特币

笔记来自《中本聪的沃森:比特币与哈尔·芬尼传奇》。译自Hal本人的一篇文章,很感人,程序员都应该一读。

Hal写此文时,已身患绝症。2008年年底时,Hal关注到比特币,那年他55岁。大多密码学研究者对比特币持怀疑态度,但Hal却很着迷,他一直很喜欢密码学的神秘和悖论。未避免失去原味,我就直接大段大段地摘录了。

今天,中本聪的真实身份依然是个谜。但在当时,我还以为我是在和一个很聪明很真诚的日本血统的年轻男子在交流。

几天后,比特币的运行非常稳定了,所以我就让它自己运行着。那时候,难度还只是1,你可以通过CPU轻易的得到块,根本不需要GPU。在接下来的几个星期里,我开采了几千个比特币。但是运行它我的计算机就会很烫,而且风扇的噪音也让我困扰,于是我就把它关闭了。现在回想起来,我真希望我多跑一段时间了。

我后来再次听说比特币已经是2010年年底了,我惊讶地发现,它不仅仍然存在,而且比特币能够兑换货币了。我打开我之前的钱包,欣慰地发现,我的比特币竟然仍然存在。由于价格一再上升,我把我的比特币转移到了离线的钱包,希望他们能对我的继承人有点价值。

说到继承人,在2009年,我大吃一惊,我突然被诊断出患有一种致命的疾病。那年年初,我减去了很多体重,并开始长袍,正是身材最好的时候。我已经跑过了好几个半程马拉松,并开始为全程马拉松训练。我想我已经为20英里的跑步做好准备了。然而,一切都错了。我的身体开始出现问题。讲话开始含糊不清,手开始失去力气,我的腿变的缓慢。2009年8月,我被诊断为卢伽雷氏病(译者注:和霍金一样的病)。

卢伽雷氏病会杀掉将信号从神经传导到肌肉的启动子神经元。它首先会导致疲惫,然后逐渐瘫痪。患者通常是在2至5年内死亡。起初我的症状也很轻微,能够继续工作,但疲劳和说话的问题迫使我在2011年年初退休。自那时以来,该病还是继续在发展。今天,我基本上处于瘫痪状态。我通过一根管子进食,并通过另一个管子辅助我呼吸。我只能通过眼动跟踪系统来操作电脑。它还有一个语音合成器让我能够发出声音。我整天坐在我的电动轮椅上。我用arduino做了一个接口,这样我就能用我的眼睛来操纵我的轮椅调整位置。

我基本能够调整过来,我的生活也不算太糟糕。我仍然可以阅读,听音乐,看电视和电影。最近我发现,我甚至可以编写代码。但速度很慢,差不多比我以前慢50倍。不过,我还是喜欢编程,他能给我目标。目前我听从迈克·赫恩的建议,通过现代处理器中的安全功能,设计支持“可信计算”,来强化比特币的钱包。现在几乎准备好发布了,我还需要调整下文档。

当然,比特币的价格起伏也让我高兴,就像我的皮肤能够感受到一样。我的比特币是靠运气得来的,没花我什么力气。我亲身经历过2011年比特币的崩溃。所以看着比特币的历史,我知道来得容易,去得也容易。

这就是我的故事。总的来说,我还是很幸运。即使得了卢伽雷氏病,我生活还是很满意。我的生命时间看来已经非常有限了...我的比特币被很好的保存在保险箱,我的儿子和女儿都很精通技术。我想比特币应该很安全。我对我留下来给他们的遗产很满意。

OpenCoin/Ripple/XPR币

Ripple由OpenCoin公司开发、运行、维护。OpenCoin的投资者包括Andreessen Horowitz(安德森·霍洛维治基金)等著名风投,而Andreessen Horowitz是门洛帕克市(Menlo Park)市的沙丘路(Sand Hill Road)最具影响力的风投之一。

2004年Ryan Fugger推出Ripple的第一个版本,目标是一个去中心化的、准许任何人创建自家货币的虚拟货币系统。运作方式类似银行清算系统:在进行跨行汇款时,银行间款项的实际结转会被尽可能延后的夜晚,此时银行计算它与其他银行的应结款项。如果来自某个银行的转入项正好与它要转给该银行的待转出款项相抵,那实际上不需转入或转出任何款项。即使不能完全相抵,实际转账金额也会远小于客户的电汇金额之和。

Ripple项目的目标是建立分布式的P2P清算网络,每个人都是自己的银行,可以签发、接受借贷,也可以作为借贷通道。如A向B借钱,但双方不认识,可以通过双方都认识的C作为通道,即1)C向B借钱 2)C把钱借给B。这个渠道需要仰仗熟人关系和信任链,因此发展很慢。多年后,OpenCoin公司成立,创始人:

  • Chris Larsen - 熟悉网络金融,是互联网银行E-Loan(Loan是贷款之意)和P2P信贷公司Prosper的创始人。
  • Jed McCaleb - Mt.Gox(最大的BitCoin交易平台)和eDonkey(电驴)的开发者。

OpenCoin成立后,实施2个策略以解决曾经的Ripple网络孤立小圈子的问题:

  1. 推出Ripple币,即XRP,作为Ripple网络的基础货币。
  2. 引入网关(Gateway)系统,类似货币兑换机构,允许人们把法定货币注入/抽离Ripple网络,可充当借贷双方的通道。

Ripple网络以及XRP和BitCoin的区别:

  • Ripple网络支持法定货币(美元、人民币等)、支持其他虚拟货币(如LTC、BTC等)。
  • XRP币的总量递减。OpenCoin创造了1000亿个XRP币,计划最终发行75%的货币(剩下的250亿个XRP币用于以后调节Ripple网络),并承诺永不增发。每次交易的交易费凭空消失(不会落入任何人手中),但交易费很低,即XRP币的消失速度非常慢。
  • Ripple网络目标要实现虚拟与法定货币的双向流通;多币种的P2P兑换与支付;P2P网络信贷;个人网络清算。

其他虚拟货币

LiteCoin

LiteCoin,也就是LTC币。是BTC(BitCoin,比特币)的一个简单变种。用他们自己的话说是:We wanted to make a coin that is silver to Bitcoin's gold. 即:如果比特币是货币世界的黄金,我们就是白银。换句话说LTC是穷人的BTC。LTC对BTC的算法进行修改,使挖矿速度加快4倍,每笔交易的验证时间也加快4倍,BTC依赖高端性能显卡,而LTC则更依赖CPU和内存。

分享

0

评论

comments powered by Disqus