掌桥专利:专业的专利平台
掌桥专利
首页

一种基于卷积优化的区块链报文处理方法及装置

文献发布时间:2023-06-19 13:45:04


一种基于卷积优化的区块链报文处理方法及装置

技术领域

本发明涉及区块链技术领域,尤其涉及一种基于卷积优化的区块链报文处理方法及装置。

背景技术

现有的区块链的哈希算法为SHA-2,生成256位哈希,攻击者在破解时很难以直接破解。但在现有的应用系统中因为国产化加密改造的原因,广泛使用SM2国密算法,且在使用中大量引入加密机、智能加密设备等硬件。

现有国密算法,如SM2加密算法,在对区块链进行报文处理时,因算法的强度及使用场景问题,直接使用SM2算法应用于报文处理过程存在一定的障碍,为进一步增强安全性,增强抗穷举、暴力破解能力,以适用于去中心化、多中心分布式处理的业务要求,需要进一步对报文处理过程加固处理。

发明内容

有鉴于此,本发明提供了一种基于SM2算法的区块链哈希加密方法及装置,用于解决SM2算法的强度及使用场景问题,直接使用SM2算法应用于区块链加密存在一定的障碍的问题。具体方案如下:

一种基于卷积优化的区块链报文处理方法,包括:

基于SM2算法对待处理报文进行加密,得到第一密文;

对所述第一密文进行卷积处理,得到第二密文;

对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;

对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。

上述的方法,可选的,基于SM2算法对待处理报文进行加密,得到第一密文,包括:

生成随机数,基于所述随机数确定预处理数组;

对所述预处理数组进行卷积处理,得到曲线点;

确定密文和校验数据;

基于所述曲线点、所述密文和所述校验数据确定所述第一密文。

上述的方法,可选的,对所述第一密文进行卷积处理,得到第二密文,包括:

选取第一卷积函数;

将所述第一卷积函数和所述第一密文相乘的结果作为所述第二密文。

上述的方法,可选的,对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文,包括:

确定椭圆曲线中的第一参数和第二参数;

基于所述第一参数和所述第二参数确定所述椭圆曲线中的第一坐标点;

基于所述第一参数、所述第二参数和所述坐标点确定第二坐标点;

将所述第二密文转换为所述椭圆曲线中的第三坐标;

选取随机数基于所述随机数,所述第一坐标、所述第二坐标和所述第三坐标确定所述第三密文。

上述的方法,可选的,对所述第三密文进行卷积处理,得到目标密文,包括:

选取第二卷积函数;

将所述第二卷积函数和所述第三密文相乘的结果作为所述目标密文。

一种基于卷积优化的区块链报文处理装置,包括:

第一加密模块,用于基于SM2算法对待处理报文进行加密,得到第一密文;

第一卷积处理模块,用于对所述第一密文进行卷积处理,得到第二密文;

第二加密模块,用于对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;

第二卷积处理模块,用于对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。

上述的装置,可选的,所述第一加密模块包括:

第一确定单元,用于生成随机数,基于所述随机数确定预处理数组;

卷积处理单元,用于对所述预处理数组进行卷积处理,得到曲线点;

第二确定单元,用于确定密文和校验数据;

第三确定单元,用于基于所述曲线点、所述密文和所述校验数据确定所述第一密文。

上述的装置,可选的,所述第一卷积处理模块包括:

第一选取单元,用于选取第一卷积函数;

第四确定单元,用于将所述第一卷积函数和所述第一密文相乘的结果作为所述第二密文。

上述的装置,可选的,所述第二加密模块包括:

第五确定单元,用于确定椭圆曲线中的第一参数和第二参数;

第六确定单元,用于基于所述第一参数和所述第二参数确定所述椭圆曲线中的第一坐标点;

第七确定单元,用于基于所述第一参数、所述第二参数和所述坐标点确定第二坐标点;

转换单元,用于将所述第二密文转换为所述椭圆曲线中的第三坐标;

选取和确定单元,用于选取随机数基于所述随机数,所述第一坐标、所述第二坐标和所述第三坐标确定所述第三密文。

上述的装置,可选的,所述第二卷积处理模块包括:

第二选取单元,用于选取第二卷积函数;

第八确定单元,用于将所述第二卷积函数和所述第三密文相乘的结果作为所述目标密文。

与现有技术相比,本发明包括以下优点:

本发明公开了一种基于卷积优化的区块链报文处理方法及装置,可应用于人工智能领域、区块链领域以及金融领域,所述方法包括:基于SM2算法对待处理报文进行加密,得到第一密文;对所述第一密文进行卷积处理,得到第二密文;对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。上述过程,对基于SM2加密后的第一密文进行卷积处理,得到第二密文,对第二密文进行ECC椭圆曲线加密处理,得到第三密文,又对第三密文进行卷积处理得到目标密文,并且目标密文与第一密文的密文长度相同,在密文长度不变的情况下,加密的复杂度增加,提高了算法的加密强度,实现了对报文处理过程的加固处理。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例公开的一种基于卷积优化的区块链报文处理方法流程图;

图2为本申请实施例公开的一种基于卷积优化的区块链报文处理装置结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明提供的一种基于卷积优化的区块链报文处理方法及装置,可用于人工智能领域、区块链领域及金融领域。上述仅为示例,并不对本发明提供的一种基于SM2算法的区块链哈希加密方法及装置的应用领域进行限定。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

本发明公开了一种基于卷积优化的区块链报文处理方法及装置,应用与对区块链中报文的加密过程中,现有的应用系统中广泛推广使用SM2、SM3的等国密算法,且在使用中大量引入加密机、智能加密设备等硬件,因此对现有正在使用的国密算法进行改进优化,以符合区块链报文处理中,对算法强度的要求,符合国家的发展要求和企业的转型升级方向,具有明显的经济价值:

攻击者使用装备高性能GPU、专用的FPGA芯片设备,以及超算设备等,可大幅提高哈希碰撞运算速度,对现有的国密算法进行增强加固是技术发展的必然要求;

国密算法,如SM2算法在金融、电信、教育等领域使用的越来越广泛,对现有算法进行优化,增强其安全性,以适应业务融合区块链的要求有着现实的迫切需要。

本发明实施例中,因为SM2属于椭圆曲线密码体制(ECC),基于椭圆曲线的离散对数求解难题,主要处理过程包括产生随机数、计算椭圆曲线点、再据此计算得出密文值。本发明实施例中通过在随机数处理后,引入卷积函数处理,增强密文值的复杂度,从而实现对SM2算法的加固优化,以适用于区块链报文加密处理,所述方法的执行流程如图1所示,包括步骤:

S101、基于SM2算法对待处理报文进行加密,得到第一密文;

本发明实施例中,SM2算法是一种ECC椭圆曲线算法,是国家密码管理局于2010年推出的椭圆曲线公钥密码算法,密码复杂度和强度较高,一般椭圆曲线算法的三次方程为:

y

其中,a,b,c,d,e为满足某些特定条件的实数。

SM2算法的方程为:

y

设M为待处理明文,其中,所述待处理明文以比特串形式存在,

(1)获取随机数k,k∈[1,n-1]

(2)C1=[k]G=(x1,y1),其中,G是椭圆曲线上一个点,它的阶n为一个大素数。

(3)C1’=C1*h(t),其中,C1’为曲线点,h(t)为脉冲函数。

(3)S=[h]P,其中,h为余因子

(4)C1’=(x2,y2)=[k]P,其中,P为椭圆曲线的任一点,由椭圆曲线参数a,b共同确定,h为余因子

(5)t=KDF(x2||y2,klen)//klen为M的长度,KDF是SM2的密钥派生函数

(6)C2=M+t,其中,C2为密文。

(7)C3=Hash(x2||M||y2),其中,C3为校验数据。

(8)C=C1’||C2||C3,其中,C为第一密文。

S102、对所述第一密文进行卷积处理,得到第二密文;

本发明实施例中,卷积计算的基本公式如下:

其中,x(t)和h(t)表示可积函数。

由公式(2)可得C’=C*h(t),其中,C’为第二密文。

S103、对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;

本发明实施例中,对所述第二密文进行ECC椭圆曲线加密的处理过程如下:

一般选择Ep(a,b)的元素G,使得G的阶n是一个大素数;二是G的阶是指满足nG=O的最小n值;三是秘密选择整数k,计算B=kG,然后公开(p,a,b,G,B),其中B为公钥,保密k,k为私钥。

加密第二密文:先把所述第二密文变换成为Ep(a,b)中的一个点Pm,然后,选择随机数r,计算密文Cm=(rG,Pm+rP),其中,Cm为第三密文,如果r使得rG或者rP为O,(其中O为无穷远点)则要重新选择r。

S104、对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。

本发明实施例中,对所述第三密文进行卷积处理,由公式(2)可得Cc=Cm*h(t),其中,Cc为目标密文,优选的,所述目标密文与所述第一密文的密文长度相同。

进一步的,此步骤也可以选取与S102中不同的卷积函数进行处理。

本发明公开了一种基于卷积优化的区块链报文处理方法,可应用于人工智能领域、区块链领域以及金融领域,所述方法包括:基于SM2算法对待处理报文进行加密,得到第一密文;对所述第一密文进行卷积处理,得到第二密文;对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。上述过程,对基于SM2加密后的第一密文进行卷积处理,得到第二密文,对第二密文进行ECC椭圆曲线加密处理,得到第三密文,又对第三密文进行卷积处理得到目标密文,并且目标密文与第一密文的密文长度相同,在密文长度不变的情况下,加密的复杂度增加,提高了算法的加密强度,实现了对报文处理过程的加固处理。

本发明实施例中,卷积处理过程运算量较小,但显著增加了密码复杂度;且加密处理值具有唯一性,当被加密对象发生了一位及以上的改变时,随机值中至少发生1/2长度的值会发生显著变化,即算法的雪崩效应,进而显著增强了密码复杂性,增加了暴力破解的工作量,使暴利破解在现有运算能力下几乎不可能实现,ECC椭圆曲线加密处理的方式仍不变为SM2的原有方式,但因为随机数值被卷积干扰处理,显著增强了区块链密文报文的复杂度,对现有系统的影响较小,且在不同平台、硬件设备上实现都较为容易,可以满足金融业务系统中区块链各种使用场景的要求。

本发明实施例中,所述处理方法中,SM2预处理随机函数加密部分,使用传统的SM2算法对区块链报文做初步处理;对上述随机函数加密结果字符串,使用卷积函数处理,得到相同长度的随机数字符串,经过此处理,加密运算量较小,但增强密码的欺骗性,使攻击者难以循旧例破解;将上述步骤中卷积处理得到的随机数字符串,依次计算出椭圆曲线点,再求解得到密文值,最后的输出值与原始SM2算法处理的区块链报文哈希值结果长度相同。此种加密处理具有雪崩效应,被加密报文的极小的变化,都会引起随机数的显著改变,从而大大增强密码的安全性,使攻击者在现有的计算设备的算力和经济投入下,逆向破解几乎不可能;经过该加密方法处理后,被加密报文的长度无变化,不影响区块链使用方接口栏位长度的调整、改动量极小,可以较好的兼顾融合现有的算法,对系统性能的影响也较小。

本发明实施例中,基于上述的报文处理方法,区块链的哈希加密强度显著提高,且加密算法的实现难度较低,可以根据业务场景的不同,适度调整卷积运算的复杂度,不会对现有的系统性能造成影响;在极端情况下,即使区块链报文的哈希值泄露后,攻击者也无法使用现有的字典库,逆向解密哈希值,避免暴力破解的发生。

本发明实施例中,国密算法SM2报文的卷积函数加密处理,类似于信号处理中加盐、增加噪声干扰。其中,加盐和增加噪声干扰为数字图像处理、数字信号处理中的概念,增加信号干扰,模拟自然环境场景中的干扰情况,检测处理算法对存在杂波、噪声、缺陷图片和数据的处理能力,也可以反向使用,用来加固数据,防止被篡改、被窃听。通过以上处理,显著增强密码的复杂性、抗穷举行,且保持原有密码长度固定不变,更好的兼容现有业务系统,使业务系统改造接入区块链的工作量较小。在保持密文长度不变的情况下,使攻击者传统的SM2算法暴力破解攻击破解和密码字典失效,且在目前的业务系统常用的SM2算法加密算法基础上进行改动,使此种区块链哈希值加密算法的改进和使用难度显著降低,并且对现有系统的性能、接口、报文格式等的影响较小。另外,所述处理方法可以满足多语言、跨平台编程的需要,也适合在低功耗低性能的物联网平台、智能家居等产品上使用,扩展金融业务的区块链应用场景,适应去中心化和万物互联的发展趋势。

基于上述的一种基于卷积优化的区块链报文处理方法,本发明实施例中还提供了一种基于卷积优化的区块链报文处理装置,所述处理装置的结构框图如图2所示,包括:

第一加密模块201、第一卷积处理模202、第二加密模203和第二卷积处理模块。

其中,

所述第一加密模块201,用于基于SM2算法对待处理报文进行加密,得到第一密文;

所述第一卷积处理模块202,用于对所述第一密文进行卷积处理,得到第二密文;

所述第二加密模块203,用于对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;

所述第二卷积处理模块204,用于对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。

本发明公开了一种基于卷积优化的区块链报文处理装置,可应用于人工智能领域、区块链领域以及金融领域,所述方法包括:基于SM2算法对待处理报文进行加密,得到第一密文;对所述第一密文进行卷积处理,得到第二密文;对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。上述过程,对基于SM2加密后的第一密文进行卷积处理,得到第二密文,对第二密文进行ECC椭圆曲线加密处理,得到第三密文,又对第三密文进行卷积处理得到目标密文,并且目标密文与第一密文的密文长度相同,在密文长度不变的情况下,加密的复杂度增加,提高了算法的加密强度,实现了对报文处理过程的加固处理。

本发明实施例中,所述第一加密模块201包括:

第一确定单元205、卷积处理单元206、第二确定单元207和第三确定单元208。

所述第一确定单元205,用于生成随机数,基于所述随机数确定预处理数组;

所述卷积处理单元206,用于对所述预处理数组进行卷积处理,得到曲线点;

所述第二确定单元207,用于确定密文和校验数据;

所述第三确定单元208,用于基于所述曲线点、所述密文和所述校验数据确定所述第一密文。

本发明实施例中,所述第一卷积处理模块202包括:

第一选取单元209和第四确定单元210。

其中,

所述第一选取单元209,用于选取第一卷积函数;

所述第四确定单元210,用于将所述第一卷积函数和所述第一密文相乘的结果作为所述第二密文。

本发明实施例中,所述第二加密模块203包括:

第五确定单元211、第六确定单元212、第七确定单元213、转换单元214和选取和确定单元215。

其中,

所述第五确定单元211,用于确定椭圆曲线中的第一参数和第二参数;

所述第六确定单元212,用于基于所述第一参数和所述第二参数确定所述椭圆曲线中的第一坐标点;

所述第七确定单元213,用于基于所述第一参数、所述第二参数和所述坐标点确定第二坐标点;

所述转换单元214,用于将所述第二密文转换为所述椭圆曲线中的第三坐标;

所述选取和确定单元215,用于选取随机数基于所述随机数,所述第一坐标、所述第二坐标和所述第三坐标确定所述第三密文。

本发明实施例中,所述第二卷积处理模块204包括:

第二选取单元216和第八确定单元217。

其中,

所述第二选取单元216,用于选取第二卷积函数;

所述第八确定单元217,用于将所述第二卷积函数和所述第三密文相乘的结果作为所述目标密文。

所述处理装置包括处理器和存储器,上述第一加密模块、第一卷积处理模块、第二加密模块和第二卷积处理模块等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,在密文长度不变的情况下,加密的复杂度增加,提高了算法的加密强度,实现了对报文处理过程的加固处理。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。

本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述基于卷积优化的区块链报文处理方法。

本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于卷积优化的区块链报文处理方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:

基于SM2算法对待处理报文进行加密,得到第一密文;

对所述第一密文进行卷积处理,得到第二密文;

对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文;

对所述第三密文进行卷积处理,得到目标密文,其中,所述目标密文与所述第一密文的密文长度相同。

上述的方法,可选的,基于SM2算法对待处理报文进行加密,得到第一密文,包括:

生成随机数,基于所述随机数确定预处理数组;

对所述预处理数组进行卷积处理,得到曲线点;

确定密文和校验数据;

基于所述曲线点、所述密文和所述校验数据确定所述第一密文。

上述的方法,可选的,对所述第一密文进行卷积处理,得到第二密文,包括:

选取第一卷积函数;

将所述第一卷积函数和所述第一密文相乘的结果作为所述第二密文。

上述的方法,可选的,对所述第二密文进行ECC椭圆曲线加密处理,得到第三密文,包括:

确定椭圆曲线中的第一参数和第二参数;

基于所述第一参数和所述第二参数确定所述椭圆曲线中的第一坐标点;

基于所述第一参数、所述第二参数和所述坐标点确定第二坐标点;

将所述第二密文转换为所述椭圆曲线中的第三坐标;

选取随机数基于所述随机数,所述第一坐标、所述第二坐标和所述第三坐标确定所述第三密文。

上述的方法,可选的,对所述第三密文进行卷积处理,得到目标密文,包括:

选取第二卷积函数;

将所述第二卷积函数和所述第三密文相乘的结果作为所述目标密文。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

以上对本发明所提供的一种基于卷积优化的区块链报文处理方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

技术分类

06120113792380