PoW共识算法
Proof of Work(工作量证明):PoW
PoW历史进程
PoW的学术研究早在1993年就开始了。1993年,美国计算机科学家、哈佛大学教授辛西娅 · 德沃克(Cynthia Dwork)首次提出了工作量证明思想,用来解决垃圾邮件问题。该机制要求邮件发送者必须算出某个数学难题的答案来证明其确实执行了一定程度的计算工作,从而提高垃圾邮件发送者的成本。1997年,英国密码学家亚当 · 伯克(Adam Back)也独立地提出、并于2002年正式发表了用于哈希现金(Hash cash)的工作量证明机制。哈希现金也是致力于解决垃圾邮件问题,其数学难题是寻找包含邮件接受者地址和当前日期在内的特定数据的SHA-1哈希值,使其至少包含20个前导零。1999 年, 马库斯 · 雅各布松(Markus Jakobsson)正式提出了 “工作量证明” 概念。这些工作为后来中本聪设计比特币的共识机制奠定了基础。
区块链的PoW
2008年,中本聪发布比特币创世论文,将工作量证明思想应用于区块链共识过程中,设计了区块链的PoW共识算法。
SHA256
SHA256是一个哈希函数,是SHA-2细分的一种算法。哈希函数,又称为散列算法,散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(或哈希值)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表。
SHA256算法,对于任意长度的消息,都会产生一个256bit的哈希值,也被称为消息摘要。这个摘要相当于是个长度为32个字节的数组,通常用一