初识区块链
Posted chengzhiyang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识区块链相关的知识,希望对你有一定的参考价值。
工作量证明(proof of work)
区块链的一个关键是,为了保证安全稳定,要给它加一个门槛:即参与者想创建区块并加入区块链,必须证明自己完成了非常困难的工作,这就是"工作量证明",简称POW。可以理解为POW用于保持区块链的节奏。
工作的困难度通过计算量来体现,它不能被快速完成,而且困难度随时间增长而加大。中本聪在比特币中设定每10分钟出一个新块(动态设置难度值)。而哈希计算(hash)的特点,就满足这种要求。
此外,完成这个工作的人,也会获得相应奖励。如”矿工“通过”挖矿“,生产区块,获得比特币奖励。算力高、速度快者优先。
哈希计算:指获得指定数据的哈希值的过程。它的特点是:指定数据的哈希值是唯一的,且原始数据有任何变化,其哈希值都会改变。
比特币中使用的POW算法是 Hashcash ,它最初用来防止垃圾邮件。计算哈希的数据由两部分组成,一个是区块数据(如前一区块的hash、时间戳、交易信息、难度值等),另一个是计算器nonce。使用哈希函数(如SHA256)计算hash值,如果不符合难度要求,则nonce+1 ,再次计算直到满足要求。
难度值 :一般用targetBits定义,意思是二进制的hash值前面有多少bit为0,暂且称为目标上界,如果计算得到的hash值比目标上界小,则表示符合有效证明。因为比目标上界小的值毕竟是少数,所以需要反复改变nonce来计算hash。如下图所示,第二行的hash为目标上界,第一行不符合要求,第三行则符合要求。
文章内容仅为区块链技术的学习记录,如有失误或考证不严谨的地方,请多多指教。
参考资料:
https://jeiwan.cc/
https://liuchengxu.gitbook.io/blockchain/
以上是关于初识区块链的主要内容,如果未能解决你的问题,请参考以下文章