美文网首页区块链研习社区块链
小白区块链笔记008:比特币小结

小白区块链笔记008:比特币小结

作者: 来吃布丁 | 来源:发表于2019-03-08 19:41 被阅读2次

之前花了一些篇幅来介绍比特币,但由于比较零散,为了便于理解,今天会从对比特币相关的知识进行一个总结。

比特币,Bitcoin(BTC),是第一种使用区块链技术实现的电子货币。比特币最早由中本聪(Satoshi Nakamoto)在2008年11月的一篇论文BitCoin:A Peer-to-Peer Electronic Cash System中提出。2009年1月3日,第一个比特币诞生,准确地说是前50个比特币伴随着第一个区块一起诞生,中本聪还把当天《泰晤士报》的头版标题写入了第一个区块。2009年1月12日,中本聪将10枚比特币发送给密码学家哈尔·芬尼,这是比特币的第一笔交易。2010年5月21日,程序员Laszlo Hanyecz使用一万个比特币购买了两个披萨,这是使用比特币兑换实物的第一个案例。

bitcoin

最初一段时间,比特币只在一小部分密码学爱好者群体中流行,中本聪也会不时出现在一些论坛一起探讨比特币。后来中本聪将比特币的开发委托给了5位极客。2011年4月后,中本聪发表了最后一项公开声明表明他要专注做其他事情后,便淡出公众视野,后来也断绝了与开发者的联系,“消失”在这个世界里,直到目前中本聪的确切身份仍然是一个迷。

比特币诞生于2008金融危机席卷全球的背景下,在传统金融体系框架内,大型金融机构为交易进行信用背书,但也同时产生了诸多弊端。归根结底,大型机构的运行者也是一个个活生生的人,面对复杂的世界,每个人都有其局限甚至偏见。众多用户将信任托付给大型机构,用户的数据由大型机构记录,难以保证这种信任权利以及用户的数据不被滥用。

比特币系统中不依赖一个第三方机构来背书,而是使用一套自动执行的计算机程序来保障交易可以顺利达成,同时任何用户都可以匿名使用,而所有的交易记录又全部公开。简单的说,就是通过一套程序建立信任保障交易能顺利进行,又防止第三方机构滥用权力进行作恶。

比特币总量约2100万个,比特币伴随区块产生,区块平均每10分钟产生1个,区块用于记录这段时间的比特币交易。最初伴随每个区块产生50个比特币,每4年比特币产生的速度减半,即从2009年1月到2013年1月,每个区块产生50个比特币,2013年1月到2017年1月,每个区块产生25个比特币。依次类推,比特币大约在2040年达到发行上限。

可能有人会疑惑,比特币总量只有2100万个,会不会有不够用的情况。其实这种担心是多余的,电子货币和实物货币不同。电子货币在系统内其实只是一串数字,在比特币系统中,可以精确到小数点后8位,最小的单位可以是“聪”,1个比特币=1亿聪。前文提到,第一笔比特币实物交易使用1万比特币购买了两个披萨,价值25美元左右,但现在比特币价格大幅升值,比如假定目前比特币价格为每个比特币2500美元,那么,现在如果再购买两个25美元的披萨,只需要0.01比特币,在这个意义上,比特币就被“拆分”了。所以,完全不用担心比特币不够的情况。

比特币是基于对等网络的电子货币,也就是说网络中各个参与者权利都是平等的,每个用户都可以参与挖矿。所谓挖矿就是争夺区块的记录权。在竞争中胜出的用户负责将交易记录打包存入区块中,并将此区块信息广播出去,本区块会被大多数节点认可后便可追加到区块链末尾,全网开始下一个区块记录权的竞争。同时,为鼓励用户参与竞争,竞争区块记录权的用户将得到伴随区块产生的比特币以及区块中所有交易费用的奖励。由于比特币的奖励会随时间衰减,因此交易费用会逐渐变为竞争的主要收益来源。

比特币中的竞争方式是通过让参与者计算出一个数学难题的解,最先计算出的符合要求的答案的用户胜出。具体来说,这个难题就是对区块的头部进行两次哈希运算,哈希函数为SHA-256函数,要求得出的哈希值前n位为0,其中n越大,代表问题越难,计算出问题所需要的时间越长,n的大小会根据网络中计算机的计算能力自动调整,以保证解决问题的时间平均保持在10分钟左右。

根据哈希函数的特性,稍微改动一下输入的数据,输出的哈希值就会大不相同。在区块头部信息中,加入一个随机数,如果运算出的结果不符合要求,就改变这个随机数,进行下一次运算,直至产生符合要求的结果或收到其他节点计算出答案的信息。可参考案例网址或看图,区块头中Nonce字段代表随机数,挖矿的过程就是计算出这个随机数,使得区块头部信息经过两次哈希运算得到一串哈希值,其前n位为0。

挖矿计算示意

比特币系统中这个竞争记录区块的机制就是工作量证明机制(Proof of Work, PoW),计算机节点通过付出一定的工作量来取得其他节点的信任。最初比特币使用CPU进行挖矿,但随着时间的推移,挖矿设备也从CPU变为GPU,FPGA直到现在专门用于挖矿的ASIC矿机,效率不断提升的同时耗电也越来越多,比特币挖矿成为了能源密集型行业。在这里值得提出的是,竞争中胜出的节点也不能随意篡改交易数据。竞争胜出仅代表节点可以进行记录此区块同时得到区块的比特币奖励。其他节点会对区块中包含的交易合法性进行验证,如果不合法,本区块不会被网络认可。

当然,如果可以集中超过网络中半数计算能力的节点,比如51%,那么理论上,便可以进行篡改数据,而由于网络通过计算能力建立共识,因而篡改的数据就会被网络接受,这也就是著名的51%攻击。但当网络达到一定规模后,集中51%的计算能力变得不可能。而且即便真得花费巨大代价集中了50%以上的计算能力,那么利用其计算能力进行挖矿的收益是巨大的。而如果其利用计算优势进行数据篡改,其他正常节点会立刻发现其作弊。一旦信任被打破,比特币会迅速被用户抛弃,其价值会迅速贬值。篡改者无利可图且损失惨重。

比特币的使用不需要身份认证,任何人都可以使用,因而其具有匿名性。系统中使用非对称加密方式来保证账户安全,即使用钥匙对——公钥密钥对交易交易进行加密。其特点是用公钥加密的数据只能用私钥打开,用私钥加密的数据只能用公钥打开。公钥对外公开,关联到账户的地址,私钥用户保留,作为用户的权利唯一凭证。交易时,支付方将资金转移到接收方地址并用自己的私钥加密,这个过程也可称为签名。所有人都可以通过支付方的公钥证明解密交易信息见证交易的存在,而接收方地址和其公钥关联,接收方可以用私钥证明其对这笔金额有使用权。这样用户就顺利完成了交易,并确保了其账户安全。

同时,比特币也不能被伪造。所有的交易信息都被记录在了区块链中,而区块链是对所有用户公开的,也就是所有的资金都能最终被追溯至最开始的挖矿奖励。虽然可以追溯整个区块链,但实际应用过程中为保证效率,引入了未花费的交易输出——UTXO的概念,交易时账户用于支付的资金必须来源于UTXO,否则便不会被接受,支付过程中,会有相应的脚本对这笔资金锁定,直到交易被最终确认,如果没有得到确认,会有回滚操作,将资金返回。

比特币从诞生至今,其价格经历过多次大起大落,人们对于其的争论一直没有停止。尽管比特币也存在一些缺点,如高耗能,交易效率低,这限制了比特币在更广泛的场景中的使用。比特币不是万能的,但比特币第一次实现了大规模的不依赖第三方机构的点对点支付,使用一套公开的技术规则来建立信用,为达成共识开创了一条新的思路,可以说中本聪开启了一个新的时代。

相关文章

网友评论

    本文标题:小白区块链笔记008:比特币小结

    本文链接:https://www.haomeiwen.com/subject/tjedpqtx.html