区块如何连接成区块链
区块链由一串使用密码学算法产生的区块连接而成。每一个区块上写满了交易记录,区块按顺序相连形成链状结构,也就是区块链大账本。
以比特币为例,矿工在生成新区块时,需要根据前一个区块的哈希值、新交易区块和随机数,来计算新的哈希值和随机数。也就是说每一个区块都是在前一个区块数据的基础上生成的,该机制保证了区块链数据的唯一性。
区块链是比特币网络的大账本,而每个区块相当于账本中的一页。那么“账本”内记载了哪些信息呢?目前比特币每个区块内主要记载了区块头、交易详情、交易计数器和区块大小等数据。
“区块头”内包含了除交易信息以外的所有信息,主要包括上一区块头哈希值:用于保证区块按顺序串连;时间戳:记录该区块的生成时间;随机数:即全网矿工一起PK的算术题答案;难度目标:该算术题的难度系数打分。
“交易详情” 详细记载了每笔交易的转出方、收入方、金额及转出方的数字签名,是每个区块内的主要内容。
“交易计数器” 表述每个区块中包含交易的数量。
“区块大小” 表示每个区块数据的大小。
哈希值是什么
哈希值又称哈希函数(或散列算法,散列函数,英语:HashFunction)是一种从任何一种数据中创建小的数字“指纹”的方法。哈希函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做哈希值(hashvalues,hashcodes,hashsums,或hashes)的指纹。哈希值通常用一个短的随机字母和数字组成的字符串来代表。
算力是什么
在通过“挖矿”得到比特币的过程中,我们需要找到其相应的解,而要找到其解,并没有固定算法,只能靠计算机随机的哈希碰撞。
一台矿机每秒钟能做多少次哈希碰撞,就是其“算力”的代表,单位写成hash/s。
算力可以简单的理解为计算能力。目前主流的矿机为14T左右的计算量级,即一台矿机就能每秒做至少1.4*10的13次方次哈希碰撞,我们可以说,这一台14T规格的矿机就有14T的算力。矿工所掌握的所有矿机占比特币全网总算力的百分比是多少,就代表该矿工在这10分钟竞争中能够获胜的概率是多少。
时间戳是什么
区块链通过时间戳保证每个区块依次顺序相连。时间戳使区块链上每一笔数据都具有时间标记。简单来说,时间戳证明了区块链上什么时候发生了什么事情,且任何人无法篡改。
时间戳在区块链中扮演公证人的角色,而且比传统的公证制度更为可信,因为区块链上记录的信息无法被任何人以任何方式修改。