一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区块链的报文加密方法及相关设备与流程

2022-08-28 08:55:03 来源:中国专利 TAG:


1.本公开涉及区块链技术领域,尤其涉及一种基于区块链的报文加密方法及相关设备。


背景技术:

2.椭圆曲线加密算法(elliptic curve cryptography,ecc),是基于椭圆曲线数学理论实现的一种非对称加密算法。相比rsa加密算法,ecc优势是可以使用更短的密钥,来实现与rsa加密算法相当或更高的安全。
3.当前,攻击者使用专用的gpu、ai设备、专业的矿机设备以及超算计算机等,可大幅提高哈希碰撞运算速度,对椭圆曲线加密算法产生的加密报文的撞库(credential stuffing attack)威胁越来越高。
4.因此,如何在区块链的数据安全需求下,增加待处理报文的加密安全性,成为本领域技术人员急需解决的技术问题。


技术实现要素:

5.鉴于上述问题,本公开提供一种克服上述问题或者至少部分地解决上述问题的一种基于区块链的报文加密方法及相关设备,技术方案如下:
6.一种基于区块链的报文加密方法,包括:
7.使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;
8.对所述第一加密报文进行混合分布处理,获得第二加密报文;
9.使用所述椭圆曲线加密算法对所述第二加密报文进行加密,获得第三加密报文;
10.对所述第三加密报文进行泰勒级数展开,获得第四加密报文。
11.可选的,所述对所述第三加密报文进行泰勒级数展开,获得第四加密报文,包括:
12.基于所述第三加密报文中的密文数字的数值,确定移位量;
13.按照所述移位量对所述第三加密报文中的密文字母进行移位,获得第四加密报文。
14.可选的,所述基于所述第三加密报文中的密文数字值,确定移位量,包括:
15.将所述第三加密报文中各密文数字的数值之和模10的余数,确定为移位量。
16.可选的,所述第四加密报文与所述第一加密报文的序列长度相同。
17.一种基于区块链的报文加密装置,包括:第一获得单元、第二获得单元、第三获得单元以及第四获得单元,
18.所述第一获得单元,用于使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;
19.所述第二获得单元,用于对所述第一加密报文进行混合分布处理,获得第二加密报文;
20.所述第三获得单元,用于使用所述椭圆曲线加密算法对所述第二加密报文进行加
密,获得第三加密报文;
21.所述第四获得单元,用于对所述第三加密报文进行泰勒级数展开,获得第四加密报文。
22.可选的,所述第四获得单元包括:第一确定子单元和第一获得子单元,
23.所述第一确定子单元,用于基于所述第三加密报文中的密文数字的数值,确定移位量;
24.所述第一获得子单元,用于按照所述移位量对所述第三加密报文中的密文字母进行移位,获得第四加密报文。
25.可选的,所述第一确定子单元,具体用于将所述第三加密报文中各密文数字的数值之和模10的余数,确定为移位量。
26.可选的,所述第四加密报文与所述第一加密报文的序列长度相同。
27.一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现上述任一项所述的基于区块链的报文加密方法。
28.一种电子设备,所述电子设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述任一项所述的基于区块链的报文加密方法。
29.借由上述技术方案,本公开提供的一种基于区块链的报文加密方法及相关设备,可应用于区块链领域或金融领域,可以使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;对所述第一加密报文进行混合分布处理,获得第二加密报文;使用所述椭圆曲线加密算法对所述第二加密报文进行加密,获得第三加密报文;对所述第三加密报文进行泰勒级数展开,获得第四加密报文。本公开通过对椭圆曲线加密算法生成的加密报文进行混合分布处理和泰勒级数展开,在不降低算法运行效率的基础上,使得加密后的加密报文的复杂性更高、更难以破解,增强待处理报文的加密安全性。
30.上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。
附图说明
31.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
32.图1示出了本公开实施例提供的基于区块链的报文加密方法的一种实施方式的流程示意图;
33.图2示出了本公开实施例提供的基于区块链的报文加密方法的另一种实施方式的流程示意图;
34.图3示出了本公开实施例提供的基于区块链的报文加密方法的另一种实施方式的流程示意图;
35.图4示出了本公开实施例提供的基于区块链的报文加密装置的结构示意图;
36.图5示出了本公开实施例提供的电子设备的结构示意图。
具体实施方式
37.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
38.现有的区块链的哈希算法为sha-2,生成256位哈希,攻击者在破解时很难以直接破解。与sha-2的强度类似的椭圆曲线加密算法(elliptic curve cryptography,ecc),在应用中也颇为广泛,对椭圆曲线加密算法进行改进优化,以符合区块链哈希算法强度的要求具显著的社会和经济价值。
39.当前,由于攻击者使用专用的gpu、ai设备、专业的矿机设备,以及超算计算机等,可大幅提高哈希碰撞运算速度,对椭圆曲线加密算法产生的哈希撞库威胁增加。椭圆曲线加密算法作为一种近年刚刚普及推广的加密算法,在新兴技术领域有许多应用场景,对该算法进行优化,可以显著增强安全性,在适应业务融合区块链上有着显著的经济意义。
40.如图1所示,本公开实施例提供的基于区块链的报文加密方法的一种实施方式的流程示意图,该报文加密方法可以包括:
41.s100、使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文。
42.其中,椭圆曲线加密算法是是一种公钥加密技术,以椭圆曲线理论为基础。利用有限域上椭圆曲线的点构成的abel群离散对数难解性,实现加密、解密和数字签名。将椭圆曲线中的加法运算与离散对数中的模乘运算相对应,就可以建立基于椭圆曲线的对应密码体制。
43.本公开实施例可以使用椭圆曲线加密算法对待处理报文进行加密,获得以哈希序列组成的第一加密报文。
44.s200、对第一加密报文进行混合分布处理,获得第二加密报文。
45.在概率与统计中,如果我们有一个包含多个随机变量的随机变量集合,再基于该集合生成一个新的随机变量,则该随机变量的分布称为混合分布(mixture distribution)。具体来说,首先,根据给定概率从集合中随机选取一个随机变量,然后再实现(realize)该随机变量的值。集合中的随机变量可以是随机实数,也可以是随机向量(每个向量的维数相同),在这种情况下,混合分布是多变量分布。
46.本公开实施例通过对第一加密报文进行混合分布处理,对第一加密报文中的哈希序列的改动较小,不影响整体算法运行效率,提高加密报文的哈希复杂度。
47.s300、使用椭圆曲线加密算法对第二加密报文进行加密,获得第三加密报文。
48.可以理解的是,在原加密报文的哈希序列中任一位哈希值的位置改变时,再使用椭圆曲线加密算法进行加密,则再次加密的加密报文的哈希序列相对于原加密报文的哈希序列,至少三分之二的哈希值会发生变化,即算法的雪崩效应,从而增强了加密报文的复杂性,增加了暴力破解的工作量,以现有暴力破解方式而言,第三加密报文几乎难以破解。
49.s400、对第三加密报文进行泰勒级数展开,获得第四加密报文。
50.本公开实施例通过对第三加密报文进行泰勒级数展开,进一步增强哈希序列的复
杂度,从而增强加密报文的抗穷举能力。
51.可选的,基于图1所示方法,如图2所示,本公开实施例提供的基于区块链的报文加密方法的另一种实施方式的流程示意图,步骤s400可以包括:
52.s410、基于第三加密报文中的密文数字的数值,确定移位量。
53.可选的,基于图2所示方法,如图3所示,本公开实施例提供的基于区块链的报文加密方法的另一种实施方式的流程示意图,步骤s410可以包括:
54.s411、将第三加密报文中各密文数字的数值之和模10的余数,确定为移位量。
55.s420、按照移位量对第三加密报文中的密文字母进行移位,获得第四加密报文。
56.本公开实施例使用了泰勒级数展开处理方式,仅对加密报文的哈希序列中的密文字母部分进行处理,可以显著增强密码的复杂性和抗穷举性。
57.可选的,第四加密报文与第一加密报文的序列长度相同。
58.本公开实施例中的加密报文的哈希序列长度都相同,可以更好的兼容现有业务系统,降低了现有业务系统改造接入区块链的工作量。在保持哈希序列长度不变的情况下,使攻击者传统的ecc算法暴力破解攻击破解和密码字典失效,且改进和使用难度显著降低,并且对现有系统的性能、接口、报文格式等的影响较小。因此,本公开实施例提供的报文加密方法,可以满足多语言、跨平台编程的需要,也适合在低功耗低性能的iot终端使用,扩展了区块链应用场景,便于实现去中心化和万物互联。
59.本公开实施例提供的报文加密方法,算法性能消耗较小,对现有系统的影响较小,且在不同编程语言、操作系统上实现较为容易,可以满足金融业务系统中区块链各种使用场景的要求。
60.本公开提供的一种基于区块链的报文加密方法,可应用于区块链领域或金融领域,可以使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;对所述第一加密报文进行混合分布处理,获得第二加密报文;使用所述椭圆曲线加密算法对所述第二加密报文进行加密,获得第三加密报文;对所述第三加密报文进行泰勒级数展开,获得第四加密报文。本公开通过对椭圆曲线加密算法生成的加密报文进行混合分布处理和泰勒级数展开,在不降低算法运行效率的基础上,使得加密后的加密报文的复杂性更高、更难以破解,增强待处理报文的加密安全性。
61.虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
62.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
63.与上述方法实施例相对应,本公开实施例还提供一种基于区块链的报文加密装置,其结构如图4所示,可以包括:第一获得单元100、第二获得单元200、第三获得单元300以及第四获得单元400。
64.第一获得单元100,用于使用椭圆曲线加密算法对待处理报文进行加密,获得与待处理报文对应的第一加密报文。
65.其中,椭圆曲线加密算法是是一种公钥加密技术,以椭圆曲线理论为基础。利用有限域上椭圆曲线的点构成的abel群离散对数难解性,实现加密、解密和数字签名。将椭圆曲
线中的加法运算与离散对数中的模乘运算相对应,就可以建立基于椭圆曲线的对应密码体制。
66.本公开实施例可以使用椭圆曲线加密算法对待处理报文进行加密,获得以哈希序列组成的第一加密报文。
67.第二获得单元200,用于对第一加密报文进行混合分布处理,获得第二加密报文。
68.在概率与统计中,如果我们有一个包含多个随机变量的随机变量集合,再基于该集合生成一个新的随机变量,则该随机变量的分布称为混合分布(mixture distribution)。具体来说,首先,根据给定概率从集合中随机选取一个随机变量,然后再实现(realize)该随机变量的值。集合中的随机变量可以是随机实数,也可以是随机向量(每个向量的维数相同),在这种情况下,混合分布是多变量分布。
69.本公开实施例通过对第一加密报文进行混合分布处理,对第一加密报文中的哈希序列的改动较小,不影响整体算法运行效率,提高加密报文的哈希复杂度。
70.第三获得单元300,用于使用椭圆曲线加密算法对第二加密报文进行加密,获得第三加密报文。
71.可以理解的是,在原加密报文的哈希序列中任一位哈希值的位置改变时,再使用椭圆曲线加密算法进行加密,则再次加密的加密报文的哈希序列相对于原加密报文的哈希序列,至少三分之二的哈希值会发生变化,即算法的雪崩效应,从而增强了加密报文的复杂性,增加了暴力破解的工作量,以现有暴力破解方式而言,第三加密报文几乎难以破解。
72.第四获得单元400,用于对第三加密报文进行泰勒级数展开,获得第四加密报文。
73.本公开实施例通过对第三加密报文进行泰勒级数展开,进一步增强哈希序列的复杂度,从而增强加密报文的抗穷举能力。
74.可选的,第四获得单元400包括:第一确定子单元和第一获得子单元,
75.第一确定子单元,用于基于第三加密报文中的密文数字的数值,确定移位量。
76.可选的,第一确定子单元,具体用于将第三加密报文中各密文数字的数值之和模10的余数,确定为移位量。
77.第一获得子单元,用于按照移位量对第三加密报文中的密文字母进行移位,获得第四加密报文。
78.本公开实施例使用了泰勒级数展开处理方式,仅对加密报文的哈希序列中的密文字母部分进行处理,可以显著增强密码的复杂性和抗穷举性。
79.可选的,第四加密报文与第一加密报文的序列长度相同。
80.本公开实施例中的加密报文的哈希序列长度都相同,可以更好的兼容现有业务系统,降低了现有业务系统改造接入区块链的工作量。在保持哈希序列长度不变的情况下,使攻击者传统的ecc算法暴力破解攻击破解和密码字典失效,且改进和使用难度显著降低,并且对现有系统的性能、接口、报文格式等的影响较小。因此,本公开实施例提供的报文加密装置,可以满足多语言、跨平台编程的需要,也适合在低功耗低性能的iot终端使用,扩展了区块链应用场景,便于实现去中心化和万物互联。
81.本公开实施例提供的报文加密装置,算法性能消耗较小,对现有系统的影响较小,且在不同编程语言、操作系统上实现较为容易,可以满足金融业务系统中区块链各种使用场景的要求。
82.本公开提供的一种基于区块链的报文加密装置,可应用于区块链领域或金融领域,可以使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;对所述第一加密报文进行混合分布处理,获得第二加密报文;使用所述椭圆曲线加密算法对所述第二加密报文进行加密,获得第三加密报文;对所述第三加密报文进行泰勒级数展开,获得第四加密报文。本公开通过对椭圆曲线加密算法生成的加密报文进行混合分布处理和泰勒级数展开,在不降低算法运行效率的基础上,使得加密后的加密报文的复杂性更高、更难以破解,增强待处理报文的加密安全性。
83.所述基于区块链的报文加密装置包括处理器和存储器,上述第一获得单元100、第二获得单元200、第三获得单元300以及第四获得单元400等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
84.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来通过对椭圆曲线加密算法生成的加密报文进行混合分布处理和泰勒级数展开,在不增加算法运行效率的基础上,使得加密后的加密报文的复杂性更高、更难以破解,增强待处理报文的加密安全性。
85.本公开实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现所述基于区块链的报文加密方法。
86.本公开实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于区块链的报文加密方法。
87.如图5所示,本公开实施例提供了一种电子设备1000,电子设备1000包括至少一个处理器1001、以及与处理器1001连接的至少一个存储器1002、总线1003;其中,处理器1001、存储器1002通过总线1003完成相互间的通信;处理器1001用于调用存储器1002中的程序指令,以执行上述的基于区块链的报文加密方法。本文中的电子设备可以是服务器、pc、pad、手机等。
88.本公开还提供了一种计算机程序产品,当在电子设备上执行时,适于执行初始化有如下方法步骤的程序:
89.使用椭圆曲线加密算法对待处理报文进行加密,获得第一加密报文;
90.对所述第一加密报文进行混合分布处理,获得第二加密报文;
91.使用所述椭圆曲线加密算法对所述第二加密报文进行加密,获得第三加密报文;
92.对所述第三加密报文进行泰勒级数展开,获得第四加密报文。
93.所述对所述第三加密报文进行泰勒级数展开,获得第四加密报文,包括:
94.基于所述第三加密报文中的密文数字的数值,确定移位量;
95.按照所述移位量对所述第三加密报文中的密文字母进行移位,获得第四加密报文。
96.所述基于所述第三加密报文中的密文数字值,确定移位量,包括:
97.将所述第三加密报文中各密文数字的数值之和模10的余数,确定为移位量。
98.所述第四加密报文与所述第一加密报文的序列长度相同。
99.需要说明的是,本公开提供的一种基于区块链的报文加密方法及相关设备可用于区块链领域或金融领域。上述仅为示例,并不对本公开提供的一种基于区块链的报文加密方法及相关设备的应用领域进行限定。
100.本公开是参照根据本公开实施例的方法、装置、电子设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
101.在一个典型的配置中,电子设备包括一个或多个处理器(cpu)、存储器和总线。电子设备还可以包括输入/输出接口、网络接口等。
102.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
103.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
104.在本公开的描述中,需要理解的是,如若涉及术语“上”、“下”、“前”、“后”、“左”和“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的位置或元件必须具有特定方位、以特定的方位构成和操作,因此不能理解为本公开的限制。
105.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
106.本领域技术人员应明白,本公开的实施例可提供为方法、系统或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
107.以上仅为本公开的实施例而已,并不用于限制本公开。对于本领域技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献