从第一行代码开始开发区块链(一)


传送门: 柏链项目学院



为什么会出现比特币呢?

  比特币的白皮书标题已经说的很清楚了,中本聪只是为了打造一个点对点的现金系统,这套系统只要有终端上开启了该客户端,就会成为一个数据备份的副本,只要全世界还有一台机器运行该客户端,那么比特币网络就会永远活下去!

  法币已经在广泛使用了,为什么还要发明比特币呢?针对目前全球一体化的形势,各个国家法币在兑换、使用上还是会存在一定问题,比特币的出现相当于给世人提供了这样的一个想法,完全靠数字加密算法实现的货币方式,人们在交易时可以极大的提升效率,当然首先得有人认可比特币的价值才行。各个国家的法币之所以存在价值,是因为有强大的国家机器在为其背书,比特币目前只能靠共识机制。其实法币还有一个问题,这个道理大家都懂。

为什么要使用区块链?

  随着比特币的火爆,比特币背后的技术区块链也从后台走向了前台。为什么要使用区块链呢?

  数字货币与法币本质上没有区别,都是代表一定价值,并且便于流通。摆在中本聪面前有几个问题:如何发行,如何分配,如何避免双花?数字货币有一个大问题必须解决,这个问题就是如何防止一份价值多次使用,俗称双花。这在中心系统下的数据库可以很容易借助事务机制来解决,但是在分布式网络就没这么简单了。当然如果是中心化系统,又会存在其他问题,比如数据可能被篡改。

  中本聪给比特币的账户模型使用了一个叫utxo的解决方案。Unspent Transaction Output是每次统计一个账户地址的所有入账和出账,最后判断出该账户地址还可以支付多少比特币。回到上面的问题,中本聪如何解决双花问题呢?其实和数据库的思路类似,他采用的是顺序执行法,他设计了区块链这项技术解决方案,通过顺序产生的区块去记录任何一笔交易信息,而区块是有序的,这样任何一笔交易都可以追述,任何一个账户的地址的入账和出账也都可以追述。

  中本聪又设定了工作量证明机制(pow)。也就是如果想往链表后增加一个块,必须完成一道复杂的数学运算–hash,这个运算没有投机取巧的方式,只能一个一个数字来尝试,我们习惯上把这件事情叫挖矿,做这件事情的人叫矿工。那么问题是矿工们为什么要去挖矿?为了鼓励矿工,也同时为了解决比特币的发行问题,中本聪设定挖矿获得系统比特币奖励!矿工帮助交易者在比特币网络中维护账本,一举两得,既可以获得挖矿的奖励也可以赚取交易手续费。

  现在回过头来,仍然要赞叹这个设计的巧妙,可以说形成了一套闭环的体系。比特币完全确认交易一般要6个块产生,还有一个问题就是如果一个矿工想做坏事,只要他的计算能力够强就可以,他能在其他人计算的同时积攒了6个块而不对外广播,他就可以按照自己的想法记账(俗称分叉 )。这个其实中本聪也考虑到了,因为比特币网络早期的时候,比特币根本不值钱,有一个哥们就是花了2w个比特币买了一个披萨,这个时候也没有人愿意去做这个坏事。而当比特币的价值逐渐被大家接受时,如果矿工去那样作恶,其实在破坏比特币的生态,导致比特币贬值,反不如他挖矿获得比特币来的划算。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值