有向无环图型区块链的生成方法及系统
2019-11-22

有向无环图型区块链的生成方法及系统

本发明实施例提供了一种有向无环图型区块链的生成方法及系统,属于区块链技术领域,方法包括:收集来自信息源的信息并打包形成新区块的第一区块体数据;在当前已形成的区块链上,选取至少一个区块作为所述新区块的父区块;将已确定的所述父区块中的区块体数据和区块头数据经不可逆算法生成固定长度的字符串,添加到所述新区块的区块头中;循环执行以上操作以形成如下形态的区块链:所述区块链整体上呈有向无环图型结构,且至少一个区块具有两个以上的父区块。本发明实施例的方案,旨在现有区块链的基础上,在任意至少两个区块的后端衍生出一个公共的子区块,以满足数据的复杂组织需求。

以下各实施例中如没有特殊说明,则默认提及的子区块链,均为基本子区块链。

举例说明,如图2a至2e中,当区块A为一个区块链中的子创世区块时,图2a至图2e,从整体上也可分别视为一个子区块链。

技术领域

进一步地,上述第二数据生成模块830还用于,以区块为单位,对各父区块中的区块体数据和区块头数据经不可逆算法生成固定长度的字符串,并分别添加到新区块的区块头中。

其中,在上述区块单元中的每个子区块记为一个子创世区块,

进一步地,不可逆算法为哈希算法。

在具体阐述本步骤的执行过程之前,先对区块链中各区块的区块体数据之间的关联性类型进行说明。

举例说明,如图la所示,上述区块单元可包括两个子区块:区块B和区块C,以及一个父区块:区块A,则在该区块单元中,将区块B和区块C分别记为一个子创世区块。又例如图lb所示,上述区块单元可包括一个子区块:区块C,以及两个父区块:区块A和区块B,则在该区块单元中,将区块C记为一个子创世区块。