一种用于区块链存证的区块链账户优化方法技术

技术编号:32517486 阅读:8 留言:0更新日期:2022-03-02 11:14
本发明专利技术涉及区块链技术领域,具体来说是一种用于区块链存证的区块链账户优化方法,设置第一安全密钥将创世账户加密后存储到账户管理系统,设置第二安全密钥将普通账户加密后存储到账户管理系统,账户管理系统初始化后,生成若干个普通账户并加密后存储到系统中,进入空闲账户队列,其优点在于:实现了账户的共享和账户统一管理;通过账户的sequence属性,确保每个账户签名的合法交易具有唯一性及连续性,避免双花问题。避免双花问题。避免双花问题。

【技术实现步骤摘要】
一种用于区块链存证的区块链账户优化方法


[0001]本专利技术涉及区块链
,具体来说是一种用于区块链存证的区块链账户优化方法。

技术介绍

[0002]近年来,在一系列政策扶持下,区块链等新一代信息技术加速发展,已延伸到数字金融、物联网、智能制造、供应链管理、数字资产交易等多个领域。
[0003]区块链是一系列计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,它以严谨的数学解决方案构建起了“去中心化”信任机制,它也是一个通过加密算法保障的不可篡改和不可伪造的分布式账本。
[0004]区块链技术可以让规模不同且没有信任基础的众多主体,具有对等地位并通过透明规则开展协作,区块链技术有潜力重构人类经济社会活动的基础架构。
[0005]区块链技术目前在我国迅速发展,并尝试与各行各业融合。充分运用区块链、大数据等技术手段,完善政务数据资源体系,实现政务信息资源跨层级、跨地域、跨系统、跨部门、跨业务互联互通,可以减少数据重复录入,避免数据和业务“两张皮”,有助于打造便捷高效、公平竞争、稳定透明的营商环境。利用区块链技术探索数字经济模式创新,实现各行业供需有效对接提供服务,有助于加快新旧动能接续转换、推动经济高质量发展。
[0006]基于区块链不可篡改的特性,区块链数据存证在各行各业得到了广泛的认可和应用。区块链数据存证,就是把数据存到区块链上,达到防篡改、可追溯、数据来源可信任的目的。数据可以是文字、视频、音频图片等任何文件形式。
[0007]为了实现快速交易,一般情况下,采用链上链下协同工作,采用文件与哈希值分离的方式,链上只保存文件的哈希值,原文件保存在链下。只要计算出文件的哈希值,与链上的哈希值比对,就知道文件是否被篡改了。
[0008]传统存证方式具有如下不足之处:1.区块链数据存证需要区块链账户提交区块链交易来完成,在大批量的数据上链存证时,需要多个线程和多个账户来提高上链的并发数,提高上链效率;2.由于区块链系统存在特殊的交易共识机制以及防双花攻击和防拒绝服务攻击的保护机制,不合理的使用账户容易导致交易上链后无法达成共识从而导致存证失败。

技术实现思路

[0009]本专利技术提供了一种用于区块链存证的区块链账户管理方法,可以批量地管理账户,并能显著地提高在高并发数据存证场景下的交易共识成功率。
[0010]为了实现上述目的,设计一种用于区块链存证的区块链账户优化方法,其特征在于方法具体如下:S1.设置第一安全密钥将创世账户加密后存储到账户管理系统,设置第二安全密钥将普通账户加密后存储到账户管理系统;
S2.账户管理系统初始化后,生成若干个普通账户并加密后存储到系统中,进入空闲账户队列,普通账户设定最大使用次数,每个普通账户产生一笔交易序号递增1,当账户使用达到设定最大使用次数后进入账户回收池并不再提高上链签名服务,并由创世账户重新生成一个新的普通账户加入到空闲账户队列中,设定普通账户最大繁忙时间,所述最大繁忙时间为从普通账户完成签名到监控到普通账户公钥归还的时间差,超过最大繁忙时间认为账户归还失败,账户管理系统强制将普通账户从繁忙账户队列释放至空闲账户队列,账户管理系统启动定时任务线上定时更新状态为需更新普通账户的队列,并设定更新定时任务间隔;S3.若干个存证系统需要上链存证时,把存证数据输入到账户管理系统中,账户管理系统从空闲账户队列中对第一个普通账户做出列操作,用账户私钥对存证数据签名后返回账户公钥和签名后的数据,并将普通账户放入到繁忙账户队列中;S4.存证系统拿到签名的交易后,需要在账户最大繁忙时间内提交交易上链成功并将账户公钥归还账户管理系统,账户管理系统将该普通账户的队列加1后从繁忙账户队列中做出列操作,并加入到空闲账户队列的最后位置。
[0011]本专利技术所述的管理方法还具有如下优选的技术方案:1.步骤S3具体如下:账户管理系统在获取账户前判断空闲账户队列中是否有空闲账户,如果空闲账户为空,返回账户繁忙的异常。
[0012]2.步骤S2还包括将普通账户设定最大上链费率,所述步骤S3账户管理系统在获取账户前通过计算存证数据大小及获取当前区块链状态下上链所需的上链费率值,若大于最大上链费率,返回上链费率升高的异常。
[0013]3.步骤S4具体如下:S41.存证系统拿到签名的交易后,超过账户最大繁忙时间未提交上链成功,即未在账户最大繁忙时间内归还账户公钥的,账户管理系统将保留账户现有的队列强制从繁忙账户出列并归还到空闲账户队列中,标识账户状态为需更新;S42.在更新定时任务触发之前,若存证系统轮询到使用状态为需更新的账户签名,且在账户最大繁忙时间内提交交易上链成功并返回账户公钥,那么账户管理系统将账户重新从繁忙账户队列归还至空闲队列后,取消需更新状态,此时,步骤S41的交易若提交上链,则提示交易过号存证失败;S43.更新定时任务每隔设定时间执行一次账户队列更新操作,即账户管理系统轮询所有状态为需更新的账户,从区块链最新账本中获取这些账户的最新队列并更新至本地,避免交易提交上链时过多交易过号的错误,提高交易被成功写入账本的概率及账户的可用性。
[0014]本专利技术同现有技术相比,其优点在于:1.实现了账户的共享和账户统一管理;2.通过账户的sequence属性,确保每个账户签名的合法交易具有唯一性及连续性,避免双花问题;3.采用空闲账户队列管理、繁忙账户队列管理双队列模型,避免多线程上链存证时,使用同一个账户的同一个sequence签名,导致该账户签名的多条交易有相同的sequence,进一步导致该账户签名的多条交易中仅有一条存证成功,其余交易重号存证失
败的现象;4.通过实时的查询费率fee的变化选择最优的上链时间,避免了在高并发场景下由于区块链费率fee的升高导致交易不能共识而存证失败的问题;5.账户管理系统对外提供账户签名服务,消除了私钥泄露的风险;6.账户管理系统设置了maxBusyTime最大繁忙时间,强制释放账户机制,消除存证系统调用账户签名服务后不提交交易上链且不归还账户的隐患;7.账户sequence达到4,294,967,295后会从1开始计数,设置账户sequence达到maxSequence后进入账户回收池,有助于管理员根据各个账户的sequence汇总统计出账户管理系统对外提供的服务的准确次数。
附图说明
[0015]图1是账户管理系统双队列模型;图2是普通账户签名流程示意图;图3是普通账户回收流程示意图;图4是普通账户正常释放示意图;图5是普通账户强制释放示意图。
具体实施方式
[0016]下面结合附图对本专利技术作进一步说明,本专利技术的结构和原理对本专业的人来说是非常清楚的。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0017]本专利技术提供了一种用于区块链存证的区块链账户管理方法,可以批量地管理账户,并能显著地提高在高并发数据存证场景下的交易共识成功率,具体如下:1.管理员设置安全密钥1将创世账户加密后存储到账户管理系统,设置安全本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于区块链存证的区块链账户优化方法,其特征在于方法具体如下:S1.设置第一安全密钥将创世账户加密后存储到账户管理系统,设置第二安全密钥将普通账户加密后存储到账户管理系统;S2.账户管理系统初始化后,生成若干个普通账户并加密后存储到系统中,进入空闲账户队列,普通账户设定最大使用次数,每个普通账户产生一笔交易序号递增1,当账户使用达到设定最大使用次数后进入账户回收池并不再提高上链签名服务,并由创世账户重新生成一个新的普通账户加入到空闲账户队列中,设定普通账户最大繁忙时间,所述最大繁忙时间为从普通账户完成签名到监控到普通账户公钥归还的时间差,超过最大繁忙时间认为账户归还失败,账户管理系统强制将普通账户从繁忙账户队列释放至空闲账户队列,账户管理系统启动定时任务线上定时更新状态为需更新普通账户的队列,并设定更新定时任务间隔;S3.若干个存证系统需要上链存证时,把存证数据输入到账户管理系统中,账户管理系统从空闲账户队列中对第一个普通账户做出列操作,用账户私钥对存证数据签名后返回账户公钥和签名后的数据,并将普通账户放入到繁忙账户队列中;S4.存证系统拿到签名的交易后,需要在账户最大繁忙时间内提交交易上链成功并将账户公钥归还账户管理系统,账户管理系统将该普通账户的队列加1后从繁忙账户队列中做出列操作,并加入到空闲账户队列的最后位置。2.如权利要求1所述的一种用于区块链存证的区块链账户优化方法...

【专利技术属性】
技术研发人员:张清唐麟雁蔡楚煌魏胜男刘俊明高昀张宇聪姚嘉华刘雪峰
申请(专利权)人:上证所信息网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1