首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

比特币与区块链(一)

前两篇文章用故事的形式将人类社会货币的演变、以及比特币产生的原因简单讲了一遍。

从纸币到记账货币,其背后均由国家信用背书,从而使货币产生价值。不过这也造成了一个问题——中心化。因为涉及到第三方平台,如果该平台受到类似于黑客的攻击,其中心数据被篡改,大大增加了不安全的风险。

基于此,中本聪创造了比特币,比特币的核心价值就是去中心化——不需要中心记账,人人都可以记账的数字货币,货币的总量有限,为2100万枚。整个账本完全公开透明、十分公平。

那么,比特币的账单是怎样实现去中心化?无法篡改?保证账单数据的真实性?

我从以下几个方面进行解释,同时也为普及几个技术名词。

在比特币的网络中,大约每10分钟产生一页账单,这页账单上记录这段时间内比特币网络的交易往来。这页账单也叫作一个区块。每一个区块都被打上了时间戳,按照时间戳的先后顺序,多个区块的组合叫做“区块链”。区块链是一个很重要概念,甚至,比特币都只能说是区块链在数字货币上的一个应用。

一个区块账单只要被记录,理论上就不会被修改。但是,无利不起早,没有好处谁会去记账?为此,中本聪指定了比特币的记账和发行是同时进行的规则,每一个对区块记账的人,都会得到比特币的奖励,同时比特币交易的时候也会有数目不定的手续费,这是区块记账人记账的动力。

挖掘新的比特币叫做“挖矿”(就是在争夺记账权,因为其记账与发行同步进行),挖矿的那些人或组织叫做“矿工”。

对于一个区块的挖掘,矿工是怎样获得记账权的?

比特币在交易的时候,每个区块会给出一个“复杂的计算题”供矿工计算,最先将这道题解开的矿工就会获得该区块的记账权。衡量一个矿工的计算能力叫做“算力”。最初始,矿工用CPU挖矿,然后用GPU,再到后来有了专门用于比特币挖矿的“矿机”。

当矿工成功之后,交易记录就会被记录到一页账单上,并同步给其他所有人。因为解决这个题目,说明了该矿工付出了工作。证明该矿工付出工作量的叫做“工作量证明”共识机制(proof of work)。但是这个共识机制有一个明显的缺点,因为矿机需要24小时工作,消耗的电量很严重,能源的消耗极大。

值得一提的是,有一个与“工作量证明”共识机制相对应的叫“权益证明”共识机制(proof of stake)。与工作量无关,它是在该网络区块里拥有币的数量的多少来竞争记账的权利。持有的币越多,记账的权利越大。代表的则是以太坊,但是以太坊当初是POW通过硬分叉转为POS的。

如果有一个人想篡改某个区块的高度,他该怎么做?他需要从这个区块开始将之后所有的区块都重新计算一遍,然后再把账本同步给别人,在篡改数据的同时,其他的矿工已经在原有的链上继续进行记账了。这就需要非常强大的算力,起码得达到51%,否则不可能进行这样的篡改。算力需要矿机作为成本,然而,投入这么多成本,只是在进行比特币数据的修改,对于投入者而言,根本没有任何好处,因为这种行为将比特币变得“不安全”,对于自己而言,也是一种损失。

同时,在比特币的网络里,每一笔账单,都能追本溯源,找到起始点出现在那个区块,这叫做“UTXO”结构(unspent transaction outputs)——未花费的交易输出。因为“UTXO”结构,致使比特币不可能被伪造。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180108G0P9EV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券