手机版 | 登陆 | 注册 | 留言 | 设首页 | 加收藏
当前位置: 网站首页 > 炒币机器人 > 文章 当前位置: 炒币机器人 > 文章

区块的数据结构

时间:2022-01-10    点击: 次    来源:网络    作者:佚名 - 小 + 大

区块链的基本组成单元就是区块(Block)。区块不断地由各个矿工节点计算出来,并链接到区块链上,从而构成了区块文件,一且链入成功就很难被修改或移动。

一个区块的基本数据结构如表31所示。

这个数据结构中,能够与其他区块联系和链接起来的信息存放在“区块头”中,它由三组区块头元数据组成:首先是组引用前一区块哈希值的数据,通过这一数据可以链接到前一个区块;其次是一组元数据,表示难度、时间戳和随机数(Nonce),表示本区块生成过程的信息;第三组元数据是Merkle根,用来有效总结区块链中所有交易的数据结构。

区块头的数据结构是这样的(见表32):

从上一节可以看出,区块链的数据结构是由一些基础技术形成的元数据组成的。要想真正深人了解区块链,需要进人到每一个基础技术模块,了解其概念和来源。

区块链的数据结构,是在哈希算法SHA256的算法支持下实现的:而在进行区块对交易的封装过程中,采用高效的默克树(MerkleTree算法一步一步地将繁杂的信息进行归纳和简化;同时,为了保证区块的顺序链接,必须采用“时间戳”(TimeStamp)机制在区块中写人时间参数:最后,为了保证共识机制达成,使全网参与的“挖矿”工作顺利进行,系统在共识机制PoW下采用了难度目标(DifficultyTarget)和随机数(Nonce)两种设计,保证系统在一个可靠的区间内运转。


区块链数据结构的基础如图3.1所示。

下面我们对其中的各个基础模块做进一步介绍。

哈希值,或哈希散列(Hash),又称为哈希算法,是密码学里的经典技术,它是种单向密码体制,是从明文到密码的不可逆过程,即只有加密没有解密过程。

哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个固定长度的二进制值称为哈希值。哈希值是一段数据唯且极其紧凑的数值表示形式。如果对一段明文采用哈希算法处理后,哪怕只更改该段落的一个字母,随后都将产生不同的哈希值,这就产生了哈希算法的一个重要特点:要找到哈希值相同的两个不同的输人,在计算上是不可能的。所以数据的哈希值可以检验数据的完整性。

哈希丽数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。正是这一特点,哈希算法和哈希值一般用于快速查找和加密算法。典型的哈希算法包括MD2MD4MD5SHA1,在区块链的第一个也是目前最经典的应用比特币中,采用了SHA256的哈希算法。哈希表是根据设定的哈希函数H(key)和处理冲突方法将一组关键字映射到一个有限的地址区间上,并以关键字在地址区间中的镜像记录在表中的存储位置,这种表被称为哈希表或散列,所得的存储位置被称为哈希地址或散列地址。

在区块链技术中,哈希算法本质上是一个数据压缩的过程(套用一个名词:降维),即从原始的任意长度的数据(对应的可能是文档、图片、视频、音频等数据文件),经过哈希算法后压缩成为固定长度的二进制值。而且其具有不可逆性,即可以通过哈希值访问到原来的数据。哈希算法应用在区块中,既减小了区块存储的数据量,同时也不影响对数据的链接访问,所以成为区块链中的一项重要基础技术。

以上内容由炒币软件提供!

上一篇:区块链的数字货币应用

下一篇:椭圆曲线加密算法的特点

备案ICP编号  |   标题:炒数字虚拟加密货币-自动炒币量化交易机器人软件-免费测试  |  地址:自动炒币量化交易机器人软件  |  电话:12345678910  |