1.本公开大体上涉及区块链技术领域,且更明确地说涉及一种基于环式验证的可编辑区块链系统。
背景技术:
2.区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点,这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础,而区块链丰富的应用场景,基本上都基于区块链能够解决信息不对称问题,实现多个主体之间的协作信任与一致行动,但由于区块链的不可篡改特点,使得已经形成的区块无法编辑,在一些应用场合中产生不便,现需要一种在保证可信度的前提下能够对区块进行编辑的区块链系统。
3.现在已经开发出了很多可编辑区块链系统,经过我们大量的检索与参考,发现现有的授权系统有如公开号为kr101723405b1,kr101857223b1、cn111460497a和kr101848896b1所公开的系统,包括第一链、第二链;所述第一链和所述第二链通过共同节点连接;所述第一链拥有编辑控制智能合约;所述共同节点拥有陷门分片,所述陷门分片用于合成陷门;所述共同节点用于发起编辑行为,根据陷门分片合成陷门,并通过所述编辑控制智能合约对所述陷门进行验证,验证通过后根据原始内容、原始随机数、目标内容计算哈希冲突值,并将目标内容和哈希冲突值发布至第二链;所述第二链中的节点对所述目标内容和哈希冲突值进行验证,验证通过则将所述目标内容替换原始内容。但该系统只能在共同节点中进行编辑,对区块的编辑仍存在较大的区域限制,在实际使用中仍存在不便。
技术实现要素:
4.本发明的目的在于,针对所存在的不足,提出了一种基于环式验证的可编辑区块链系统,
5.本发明采用如下技术方案:
6.一种基于环式验证的可编辑区块链系统,包括基础环模块、记录模块、编辑申请模块和编辑验证模块,所述基础环模块用于区块链的可编辑区域控制,所述记录模块用于记录区块链内容并执行编辑操作,所述编辑申请模块用于接收处理用户发送的编辑请求,所述编辑验证模块用于对编辑请求进行验证;
7.所述基础环模块包括若干个基础区块、哈希处理单元和窗口单元,所述基础区块依次连接形成单向环状,所述基础区块内设有身份字段和连接字段,所述身份字段内为通过哈希处理单元计算处理得到的哈希值,所述连接字段为上一个基础区块的身份字段内容,所述基础环模块中可编辑的基础区块称为环尾区块,所述窗口单元用于保存环尾区块的编号,所述环尾区块的下一个基础区块称为环头区块;
8.所述记录模块包括记录区块和执行单元,所述记录区块以链式方式连接在基础区块下,所述系统每隔固定时间t在所述环尾区块下生成新的记录区块用于记录内容,每生成
一个新的记录区块后,环尾区块和环头区块发生变更,所述执行单元能够在生成一个新的记录区块的周期时间内对环尾区块连接的记录区块进行编辑;
9.所述编辑申请模块将接收的编辑请求分类并批量发送至所述编辑验证单元,然后将通过验证的编辑请求发送至所述执行单元;
10.所述编辑验证模块根据所述编辑请求向对应的用户发送查询信息,用户返回确认信息后该编辑请求通过验证,所述编辑验证模块对每条编辑请求的验证时间进行统计得到{ti};
11.所述执行单元根据接收的编辑请求对环尾区块连接的记录区块进行一次批量编辑修改的时间长度为t,t满足:
[0012][0013]
其中,max(ti)表示所有验证时间中的最大值,min(ti)表示所有验证时间中的最小值;
[0014]
进一步的,所述哈希处理单元包括哈希计算器,所述哈希计算器能够将输入内容转换为一个哈希值输出,所述哈希计算器针对一个基础区块连接的每一个记录区块计算得到一个哈希值,再将这些哈希值以及基础区块的连接字段的内容作为输入内容处理得到一个哈希值,该哈希值作为对应的基础区块的身份字段的内容;
[0015]
进一步的,所述执行单元对某一基础区块连接的记录区块的编辑过程包括如下步骤:
[0016]
s21、等待该记录区块所连接的基础区块转变为环尾区块;
[0017]
s22、将定时器的时间设置为t;
[0018]
s23、所述编辑申请模块将对应的具有通过验证标签的编辑请求发送至执行单元;
[0019]
s24、所述执行单元对记录区块进行编辑;
[0020]
s25、所述哈希计算器重新计算该记录区块的哈希值;
[0021]
s26、重复步骤s23至步骤s25,直至定时器达到时间长度t,其中t<t;
[0022]
s27、生成新的记录区块,并计算该记录区块的哈希值;
[0023]
s28、所述哈希处理单元计算该基础区块及其记录区块的哈希值作为身份字段内容;
[0024]
进一步的,所述基础区块内还设有活动密钥生成器,所述活动密钥生成器能够生成密钥,所述活动密钥生成器在活跃状态时会不断的生成新的密钥,所述活动密钥在不活跃状态时将停止生成新的密钥,环尾区块的活动密钥生成器处于非活跃状态,其余基础区块的活动密钥生成器处于活跃状态;
[0025]
进一步的,所述窗口单元从所述环尾区块处获取密钥,所述执行单元从所述窗口单元获取密钥以及环尾区块的编号,所述执行单元在访问环尾区块时,所述环尾区块对执行单元提供的密钥进行核对,核对通过后,所述执行单元能够对环尾单元连接的记录区块进行编辑修改。
[0026]
本发明所取得的有益效果是:
[0027]
本系统通过基础区块形成一个封闭的环形,每个基础区块上连接用于记录内容的记录区块,一个基础区块上所有记录区块以及基础区块上的部分内容的哈希值作为身份字
段的内容记录在基础区块上,桑上一个基础区块的身份字段内容作为本基础区块的连接字段,使基础区块间产生联系,当非法修改任意的记录区块时,会使身份字段与连接字段之间产生矛盾,从而保证了本系统的可靠性,本系统存在一个时间窗口使执行单元对环尾区块连接的记录区块进行编辑,而环尾区块会在基础区块之间循环变更,使得任意一个区块在合法方式下能够进行编辑,使区块的可编辑范围为全区块,满足应用场景的需求。
[0028]
为使能更进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,然而所提供的附图仅用于提供参考与说明,并非用来对本发明加以限制。
附图说明
[0029]
图1为本发明整体结构框架示意图;
[0030]
图2为本发明基础区块连接以及环尾区块环头区块变更示意图;
[0031]
图3为本发明基础区块与记录区块连接关系示意图;
[0032]
图4为本发明基础区块的身份字段哈希值处理示意图;
[0033]
图5为本发明执行单元访问权限校验示意图。
具体实施方式
[0034]
以下是通过特定的具体实施例来说明本发明的实施方式,本领域技术人员可由本说明书所公开的内容了解本发明的优点与效果。本发明可通过其他不同的具体实施例加以施行或应用,本说明书中的各项细节也可基于不同观点与应用,在不悖离本发明的精神下进行各种修饰与变更。另外,本发明的附图仅为简单示意说明,并非依实际尺寸的描绘,事先声明。以下的实施方式将进一步详细说明本发明的相关技术内容,但所公开的内容并非用以限制本发明的保护范围。
[0035]
实施例一。
[0036]
本实施例提供了一种基于环式验证的可编辑区块链系统,结合图1,包括基础环模块、记录模块、编辑申请模块和编辑验证模块,所述基础环模块用于区块链的可编辑区域控制,所述记录模块用于记录区块链内容并执行编辑操作,所述编辑申请模块用于接收处理用户发送的编辑请求,所述编辑验证模块用于对编辑请求进行验证;
[0037]
所述基础环模块包括若干个基础区块、哈希处理单元和窗口单元,所述基础区块依次连接形成单向环状,所述基础区块内设有身份字段和连接字段,所述身份字段内为通过哈希处理单元计算处理得到的哈希值,所述连接字段为上一个基础区块的身份字段内容,所述基础环模块中可编辑的基础区块称为环尾区块,所述窗口单元用于保存环尾区块的编号,所述环尾区块的下一个基础区块称为环头区块;
[0038]
所述记录模块包括记录区块和执行单元,所述记录区块以链式方式连接在基础区块下,所述系统每隔固定时间t在所述环尾区块下生成新的记录区块用于记录内容,每生成一个新的记录区块后,环尾区块和环头区块发生变更,所述执行单元能够在生成一个新的记录区块的周期时间内对环尾区块连接的记录区块进行编辑;
[0039]
所述编辑申请模块将接收的编辑请求分类并批量发送至所述编辑验证单元,然后将通过验证的编辑请求发送至所述执行单元;
[0040]
所述编辑验证模块根据所述编辑请求向对应的用户发送查询信息,用户返回确认
信息后该编辑请求通过验证,所述编辑验证模块对每条编辑请求的验证时间进行统计得到{ti};
[0041]
所述执行单元根据接收的编辑请求对环尾区块连接的记录区块进行一次批量编辑修改的时间长度为t,t满足:
[0042][0043]
其中,max(ti)表示所有验证时间中的最大值,min(ti)表示所有验证时间中的最小值;
[0044]
所述哈希处理单元包括哈希计算器,所述哈希计算器能够将输入内容转换为一个哈希值输出,所述哈希计算器针对一个基础区块连接的每一个记录区块计算得到一个哈希值,再将这些哈希值以及基础区块的连接字段的内容作为输入内容处理得到一个哈希值,该哈希值作为对应的基础区块的身份字段的内容;
[0045]
所述执行单元对某一基础区块连接的记录区块的编辑过程包括如下步骤:
[0046]
s21、等待该记录区块所连接的基础区块转变为环尾区块;
[0047]
s22、将定时器的时间设置为t;
[0048]
s23、所述编辑申请模块将对应的具有通过验证标签的编辑请求发送至执行单元;
[0049]
s24、所述执行单元对记录区块进行编辑;
[0050]
s25、所述哈希计算器重新计算该记录区块的哈希值;
[0051]
s26、重复步骤s23至步骤s25,直至定时器达到时间长度t,其中t<t;
[0052]
s27、生成新的记录区块,并计算该记录区块的哈希值;
[0053]
s28、所述哈希处理单元计算该基础区块及其记录区块的哈希值作为身份字段内容;
[0054]
所述基础区块内还设有活动密钥生成器,所述活动密钥生成器能够生成密钥,所述活动密钥生成器在活跃状态时会不断的生成新的密钥,所述活动密钥在不活跃状态时将停止生成新的密钥,环尾区块的活动密钥生成器处于非活跃状态,其余基础区块的活动密钥生成器处于活跃状态;
[0055]
所述窗口单元从所述环尾区块处获取密钥,所述执行单元从所述窗口单元获取密钥以及环尾区块的编号,所述执行单元在访问环尾区块时,所述环尾区块对执行单元提供的密钥进行核对,核对通过后,所述执行单元能够对环尾单元连接的记录区块进行编辑修改。
[0056]
实施例二。
[0057]
本实施例包含了实施例一的全部内容,提供了一种基于环式验证的可编辑区块链系统,包括基础环模块、记录模块、编辑申请模块和编辑验证模块,结合图2和图3,所述基础环模块包括若干个相互连接形成环状的基础区块,所述记录模块包括与所述基础区块链式连接的记录区块,所述基础区块上设有两个字段,一个为身份字段,用于记录该基础区块以及连接在该基础区块下的记录区块的哈希值,另一个为连接字段,用于记录上一个基础区块的身份字段的内容,所述基础区块根据所述身份字段和所述连接字段进行连接形成基础环,所述基础环中存在一个基础区块为环尾区块,所述环尾区块的下一个基础区块称为环头区块,本系统只能在环尾区块连接的记录区块上进行编辑和生成新的记录区块,当生成
新的记录区块后,重新计算环尾区块上的身份字段,同时将环头区块上的连接字段内容更新成环尾区块上的身份字段内容并重新计算环头区块上的身份字段,此时,原来的环头区块成为新的环尾区块,原来的环头区块连接的下一个基础区块成为新的环头区块;
[0058]
所述编辑申请模块用于接收处理用户发送的编辑请求,所述编辑请求中的内容包括需要编辑的记录区块的位置信息和修改信息,所述记录区块的位置信息由该记录区块所连接的基础区块的编号以及该记录区块在对应的基础区块中的序号构成,用坐标(x,y)表示,其中,x为基础区块的编号,y为记录区块的序号,所述编辑申请模块将具有相同x的编辑请求划为一类,并将编辑请求中的修改信息发送至编辑验证模块,当所述编辑验证模块返回验证成功的消息后,所述编辑申请模块将对应的编辑请求打上通过验证的标签,所述编辑申请模块将坐标x为环尾区块的编号且具有通过验证标签的编辑请求发送至所述记录模块,所述记录模块根据编辑请求中的位置信息找到对应的记录区块,根据编辑请求中的修改信息对记录区块进行编辑修改;
[0059]
所述编辑验证模块接收所述编辑申请模块发送的修改消息,依据所述修改消息向相关的用户发送查询信息,当所有相关的用户返回确认信息后,所述编辑验证模块向所述编辑请求模块返回验证成功的信息;
[0060]
所述基础环模块还包括哈希处理单元,所述哈希处理单元用于计算基础区块及其对应的记录区块的哈希值;
[0061]
所述记录模块还包括执行单元,所述执行单元用于执行所述编辑申请模块的编辑请求;
[0062]
结合图4,所述哈希处理单元获得哈希值的过程包括如下步骤:
[0063]
s1、获取基础区块连接的记录区块的数量n;
[0064]
s2、申请(n 1)个存储空间;
[0065]
s3、根据所述记录区块的序号依次计算每个记录区块的哈希值,并将哈希值存入对应的存储空间,其中,序号为i的记录区块的哈希值存入第i个存储空间;
[0066]
s4、将基础区块的连接字段的内容存入第(i 1)个存储空间中;
[0067]
s5、计算这(n 1)个存储空间内容的哈希值;
[0068]
所述哈希处理单元内设有哈希计算器,在步骤s3和步骤s5中通过将记录区块的内容或存储空间的内容输入到哈希计算器中计算得到对应的哈希值;
[0069]
所述记录区块中会保存该区块通过哈希计算器计算得到的哈希值,当所述记录区块未被编辑修改时,步骤s3中直接获取保存的哈希值存入对应的存储空间中,只有当记录区块被重新编辑或者记录区块是新生成的记录区块时,通过哈希计算器计算其哈希值;
[0070]
所述系统每隔固定的时间t需要生成一个新的记录区块,每生成一次新记录区块,环头区块和环尾区块发生一次变化,结合图3,所有基础区块所对应的记录区块的数量的差值不超过1;
[0071]
对某一基础区块连接的记录区块的编辑过程包括如下步骤:
[0072]
s21、等待该记录区块所连接的基础区块转变为环尾区块;
[0073]
s22、将定时器的时间设置为t;
[0074]
s23、所述编辑申请模块将对应的具有通过验证标签的编辑请求发送至执行单元;
[0075]
s24、所述执行单元对记录区块进行编辑;
[0076]
s25、所述哈希计算器重新计算该记录区块的哈希值;
[0077]
s26、重复步骤s23至步骤s25,直至定时器达到时间长度t,其中t<t;
[0078]
s27、生成新的记录区块,并计算该记录区块的哈希值;
[0079]
s28、所述哈希处理单元计算该基础区块及其记录区块的哈希值作为身份字段内容;
[0080]
所述执行单元是系统内唯一具有对记录区块进行编辑修改的组件;
[0081]
所述基础环模块还包括窗口单元,所述窗口单元用于记录所述环尾区块的编号,所述执行单元通过从所述窗口单元获取编号,再根据编号访问对应基础区块下的记录区块并进行编辑;
[0082]
当所述环尾区块进行变更时,原环尾区块向所述窗口单元发送变更信号,所述窗口单元在接收变更信号时对发送者进行身份确认,当发送者身份与记录的编号一致时,对编号进行变更;
[0083]
所述基础区块内还设有活动密钥生成器,所述活动密钥生成器能够生成密钥,所述活动密钥生成器的状态包括活跃状态和不活跃状态,当所述活动密钥生成器处于活跃状态时,会不断的生成新的密钥,但同一时间只保留最后生成的密钥,当所述活动密钥处于不活跃状态时,不再生成新的密钥,当所述窗口单元在变更编号后,会向新的环尾区块索取密钥,新的环尾区块在发送完密钥后,其活动密钥生成器转入不活跃状态,当所述环尾区块在发送变更信号时,其活动密钥生成其转入活跃状态;
[0084]
结合图5,所述执行单元在所述窗口单元获取编号的同时获取密钥,当所述执行单元访问对应的基础区块时,所述基础区块会对访问者提供的密钥以及访问者的身份进行验证,只有同时满足密钥一致以及访问者为执行单元时,访问者才能对该基础区块连接的记录区块进行编辑,由于非环尾区块的活动密钥生成器处于活跃状态,执行单元也无法提供一致的密钥,所述执行单元也仅能对环尾区块下的记录区块进行编辑,从而实现对可编辑区块的严格控制;
[0085]
所述系统还包括修改记录模块,所述修改记录模块为一条独立的区块链,该区块链的内容不可篡改,用于记录本系统发生的每一次记录区块编辑事件;
[0086]
所述编辑验证模块会对每条编辑请求的验证时间进行统计,第i条编辑请求的验证时间记为ti,步骤s22中定时器的预设时间t根据所有的验证时间以及记录区块生成周期t计算得到,计算公式为:
[0087][0088]
其中,max(ti)表示所有验证时间中的最大值,min(ti)表示所有验证时间中的最小值。
[0089]
以上所公开的内容仅为本发明的优选可行实施例,并非因此局限本发明的保护范围,所以凡是运用本发明说明书及附图内容所做的等效技术变化,均包含于本发明的保护范围内,此外,随着技术发展其中的元素可以更新的。
技术特征:
1.一种基于环式验证的可编辑区块链系统,其特征在于,包括基础环模块、记录模块、编辑申请模块和编辑验证模块,所述基础环模块用于区块链的可编辑区域控制,所述记录模块用于记录区块链内容并执行编辑操作,所述编辑申请模块用于接收处理用户发送的编辑请求,所述编辑验证模块用于对编辑请求进行验证;所述基础环模块包括若干个基础区块、哈希处理单元和窗口单元,所述基础区块依次连接形成单向环状,所述基础区块内设有身份字段和连接字段,所述身份字段内为通过哈希处理单元计算处理得到的哈希值,所述连接字段为上一个基础区块的身份字段内容,所述基础环模块中可编辑的基础区块称为环尾区块,所述窗口单元用于保存环尾区块的编号,所述环尾区块的下一个基础区块称为环头区块;所述记录模块包括记录区块和执行单元,所述记录区块以链式方式连接在基础区块下,所述系统每隔固定时间t在所述环尾区块下生成新的记录区块用于记录内容,每生成一个新的记录区块后,环尾区块和环头区块发生变更,所述执行单元能够在生成一个新的记录区块的周期时间内对环尾区块连接的记录区块进行编辑;所述编辑申请模块将接收的编辑请求分类并批量发送至所述编辑验证单元,然后将通过验证的编辑请求发送至所述执行单元;所述编辑验证模块根据所述编辑请求向对应的用户发送查询信息,用户返回确认信息后该编辑请求通过验证,所述编辑验证模块对每条编辑请求的验证时间进行统计得到{t
i
};所述执行单元根据接收的编辑请求对环尾区块连接的记录区块进行一次批量编辑修改的时间长度为t,t满足:其中,max(t
i
)表示所有验证时间中的最大值,min(t
i
)表示所有验证时间中的最小值。2.如权利要求1所述的一种基于环式验证的可编辑区块链系统,其特征在于,所述哈希处理单元包括哈希计算器,所述哈希计算器能够将输入内容转换为一个哈希值输出,所述哈希计算器针对一个基础区块连接的每一个记录区块计算得到一个哈希值,再将这些哈希值以及基础区块的连接字段的内容作为输入内容处理得到一个哈希值,该哈希值作为对应的基础区块的身份字段的内容。3.如权利要求2所述的一种基于环式验证的可编辑区块链系统,其特征在于,所述执行单元对某一基础区块连接的记录区块的编辑过程包括如下步骤:s21、等待该记录区块所连接的基础区块转变为环尾区块;s22、将定时器的时间设置为t;s23、所述编辑申请模块将对应的具有通过验证标签的编辑请求发送至执行单元;s24、所述执行单元对记录区块进行编辑;s25、所述哈希计算器重新计算该记录区块的哈希值;s26、重复步骤s23至步骤s25,直至定时器达到时间长度t,其中t<t;s27、生成新的记录区块,并计算该记录区块的哈希值;s28、所述哈希处理单元计算该基础区块及其记录区块的哈希值作为身份字段内容。
4.如权利要求3所述的一种基于环式验证的可编辑区块链系统,其特征在于,所述基础区块内还设有活动密钥生成器,所述活动密钥生成器能够生成密钥,所述活动密钥生成器在活跃状态时会不断的生成新的密钥,所述活动密钥在不活跃状态时将停止生成新的密钥,环尾区块的活动密钥生成器处于非活跃状态,其余基础区块的活动密钥生成器处于活跃状态。5.如权利要求4所述的一种基于环式验证的可编辑区块链系统,其特征在于,所述窗口单元从所述环尾区块处获取密钥,所述执行单元从所述窗口单元获取密钥以及环尾区块的编号,所述执行单元在访问环尾区块时,所述环尾区块对执行单元提供的密钥进行核对,核对通过后,所述执行单元能够对环尾单元连接的记录区块进行编辑修改。
技术总结
本发明提供了一种基于环式验证的可编辑区块链系统,其特征在于,包括基础环模块、记录模块、编辑申请模块和编辑验证模块,所述基础环模块用于区块链的可编辑区域控制,所述记录模块用于记录区块链内容并执行编辑操作,所述编辑申请模块用于接收处理用户发送的编辑请求,所述编辑验证模块用于对编辑请求进行验证;本系统通过基础环模块来实现区块的连接以及哈希验证,而实际记录内容的记录区块的哈希值之间不存在直接关系,为区块的可编辑提供了基础条件,而本系统又通过基础环模块对区块编辑形成限制,防止恶意修改现象的发生。防止恶意修改现象的发生。防止恶意修改现象的发生。
技术研发人员:刘小飞
受保护的技术使用者:佛山市龙生光启科技有限公司
技术研发日:2022.04.08
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-10520.html