System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据加密处理方法、设备、介质及产品技术_技高网

一种数据加密处理方法、设备、介质及产品技术

技术编号:42600716 阅读:16 留言:0更新日期:2024-09-03 18:12
本发明专利技术涉及计算机技术领域,公开了一种数据加密处理方法、设备、介质及产品,该方法包括:对待处理数据进行数据格式转换和消息填充,得到填充数据;实时获取第一随机数和第二随机数;根据第一随机数产生使能信号,并利用使能信号控制填充数据结合第二随机数进行分组扩展计算;同时调整分组扩展和迭代压缩之间的时序关系;根据调整后的分组扩展和迭代压缩之间的时序关系,将分组扩展计算后的数据进行对应组的迭代压缩计算,得到加密数据结果。这样实现了对算法功耗的随机化,使其无法通过功耗分析的方法破译关键信息,能够抵抗差分功耗分析的攻击,在保证计算效率的同时,对数据信息有一定的安全和保障,提升数据加密的适用性。

【技术实现步骤摘要】

本专利技术涉及计算机,特别是涉及一种数据加密处理方法、设备、介质及产品


技术介绍

1、基于哈希的消息认证码(hash-based message authentication code,简称hmac)算法是一种带密钥的消息鉴别码算法,用于校验数据完整性和来源合法性,适用于任何安全体系结构,进程或应用的安全服务。当hmac算法中的哈希函数使用sm3(一种密码散列函数标准)算法时,可称hmac-sm3算法,是一种较为安全的算法,但为了获取关键信息,当前仍然有很多攻击方法对其进行攻击。

2、其中,差分功耗分析(differential power analysis,简称dpa)是一种最常用的手段,它是一种侧信道攻击,旨在通过分析设备在不同输入或操作情况下的功耗泄漏(功耗曲线)来获取密钥或其他敏感信息。这种攻击方法不需要直接访问设备的内部信息,而是通过观察设备在操作过程中的功耗变化来推断出密钥或其他敏感信息,进而导致算法安全性下降,对数据信息的安全有着极大的影响。


技术实现思路

1、本专利技术的目的是提供一种数据加密处理方法、设备、介质及产品,可以实现对算法功耗的随机化,无法通过功耗分析的方法破译关键信息,进而提高算法的安全性,保障了数据信息的安全。

2、为了解决上述技术问题,本专利技术提供一种数据加密处理方法,包括:

3、对待处理数据进行数据格式转换和消息填充,得到填充数据;

4、实时获取第一随机数和第二随机数;

5、根据所述第一随机数产生使能信号,并利用所述使能信号控制所述填充数据结合所述第二随机数进行分组扩展计算;

6、同时调整分组扩展和迭代压缩之间的时序关系;

7、根据调整后的分组扩展和迭代压缩之间的时序关系,将分组扩展计算后的数据进行对应组的迭代压缩计算,得到加密数据结果。

8、第一方面,在本专利技术提供的上述数据加密处理方法中,利用所述使能信号控制所述填充数据结合所述第二随机数进行分组扩展计算,包括:

9、在所述使能信号的控制下,对所述填充数据中待计算数据进行分组;待计算数据的数据长度为512比特;

10、将分组后的每组数据结合所述第二随机数按照连续的两个时钟周期进行分组扩展计算的分解操作。

11、另一方面,在本专利技术提供的上述数据加密处理方法中,将分组后的每组数据结合所述第二随机数按照连续的两个时钟周期进行分组扩展计算的分解操作,包括:

12、在第一个时钟周期内,将分组后的每组数据与所述第二随机数通过第一设定函数进行分组扩展计算的第一分解操作,得到第一变量;

13、将分组后的每组数据与所述第二随机数通过第二设定函数进行分组扩展计算的第二分解操作,得到第二变量;

14、在第二个时钟周期内,将所述第一变量和所述第二变量进行异或运算,得到分组扩展计算后的数据。

15、另一方面,在本专利技术提供的上述数据加密处理方法中,所述第一设定函数的表达式为:

16、temp_1=p1(wj-16⊕wj-9⊕(wj-3<<15))⊕random_b;

17、所述第二设定函数的表达式为:

18、temp_2=(wj-13<<7)⊕wj-6⊕random_b;

19、其中,temp_1为第一变量,temp_2为第二变量;设x=wj-16⊕wj-9⊕(wj-3<<15)时,p1(x)=x⊕(x<<<15)⊕(x<<<23);⊕表示异或运算,<<表示向左移位操作,<<<表示向左循环移位,<<和<<<后面的数据表示移位的位数,random_b表示第二随机数。

20、另一方面,在本专利技术提供的上述数据加密处理方法中,分组扩展对应的两个时钟周期小于或等于单次迭代压缩的时间;

21、当分组扩展对应的两个时钟周期与单次迭代压缩之间的时间比例为n:1时,所述第一随机数的长度为n/2比特;其中,n为整数。

22、另一方面,在本专利技术提供的上述数据加密处理方法中,调整分组扩展和迭代压缩之间的时序关系,包括:

23、将相邻的分组扩展计算间的时间调整为随机状态,以使对应组的迭代压缩计算之前,完成分组扩展计算;

24、其中,相邻的分组扩展计算间的时间大于或等于0。

25、另一方面,在本专利技术提供的上述数据加密处理方法中,在将分组扩展计算后的数据进行对应组的迭代压缩计算的过程中,包括:

26、确定已完成的分组扩展轮次和迭代压缩轮次的关系;

27、若已完成的分组扩展轮次等于迭代压缩轮次加1或2,直接将分组扩展计算的使能置为1;

28、若已完成的分组扩展轮次小于迭代压缩轮次加2且不等于迭代压缩轮次加1,则判断所述第一随机数是否出现错误;

29、若是,则将分组扩展计算的使能置为1;若否,则将分组扩展计算的使能置为0。

30、另一方面,在本专利技术提供的上述数据加密处理方法中,还包括:

31、实时获取第三随机数;

32、在迭代压缩的过程中,根据所述第三随机数通过控制开关来控制迭代压缩的轮次跳转。

33、另一方面,在本专利技术提供的上述数据加密处理方法中,根据所述第三随机数通过控制开关来控制迭代压缩的轮次跳转,包括:

34、将所述第三随机数分为第一子随机数部分和第二子随机数部分;

35、比较所述第一子随机数部分和所述第二子随机数部分,将数值大的作为跳转起始轮,数值小的作为跳转目的轮;

36、当控制开关为开启状态时,在迭代压缩轮次进行到所述跳转起始轮时,调到所述跳转目的轮再次进行迭代压缩计算。

37、另一方面,在本专利技术提供的上述数据加密处理方法中,当所述第三随机数的长度为12比特时,采用下述公式将所述第三随机数分为第一子随机数部分和第二子随机数部分:

38、random_c_1=random_c[5:0];

39、random_c_2=random_c[11:6];

40、其中,random_c为所述第三随机数,random_c_1为第一子随机数部分,random_c_2为第二子随机数部分,random_c[5:0]为所述第三随机数中的第1比特至第6比特对应的部分,random_c[11:6]为所述第三随机数中的第7比特至第12比特对应的部分。

41、另一方面,在本专利技术提供的上述数据加密处理方法中,根据所述第三随机数通过控制开关来控制迭代压缩的轮次跳转,还包括:

42、将调到所述跳转目的轮后到再逐次计算回到所述跳转起始轮轮次间的时间段作为空轮计算时间;

43、在所述空轮计算时间内,关闭所述控制开关,不进行分组扩展的计算;

44、当计算回到所述跳转起始轮本文档来自技高网...

【技术保护点】

1.一种数据加密处理方法,其特征在于,包括:

2.根据权利要求1所述的数据加密处理方法,其特征在于,利用所述使能信号控制所述填充数据结合所述第二随机数进行分组扩展计算,包括:

3.根据权利要求2所述的数据加密处理方法,其特征在于,将分组后的每组数据结合所述第二随机数按照连续的两个时钟周期进行分组扩展计算的分解操作,包括:

4.根据权利要求3所述的数据加密处理方法,其特征在于,所述第一设定函数的表达式为:

5.根据权利要求4所述的数据加密处理方法,其特征在于,分组扩展对应的两个时钟周期小于或等于单次迭代压缩的时间;

6.根据权利要求1所述的数据加密处理方法,其特征在于,调整分组扩展和迭代压缩之间的时序关系,包括:

7.根据权利要求1所述的数据加密处理方法,其特征在于,在将分组扩展计算后的数据进行对应组的迭代压缩计算的过程中,包括:

8.根据权利要求1所述的数据加密处理方法,其特征在于,还包括:

9.根据权利要求8所述的数据加密处理方法,其特征在于,根据所述第三随机数通过控制开关来控制迭代压缩的轮次跳转,包括:

10.根据权利要求9所述的数据加密处理方法,其特征在于,当所述第三随机数的长度为12比特时,采用下述公式将所述第三随机数分为第一子随机数部分和第二子随机数部分:

11.根据权利要求9所述的数据加密处理方法,其特征在于,根据所述第三随机数通过控制开关来控制迭代压缩的轮次跳转,还包括:

12.根据权利要求1所述的数据加密处理方法,其特征在于,得到加密数据结果,包括:

13.一种数据加密处理设备,其特征在于,包括:

14.一种非易失性存储介质,其特征在于,所述非易失性存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至12任一项所述的数据加密处理方法的步骤。

15.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现如权利要求1至12任一项所述的数据加密处理方法的步骤。

...

【技术特征摘要】

1.一种数据加密处理方法,其特征在于,包括:

2.根据权利要求1所述的数据加密处理方法,其特征在于,利用所述使能信号控制所述填充数据结合所述第二随机数进行分组扩展计算,包括:

3.根据权利要求2所述的数据加密处理方法,其特征在于,将分组后的每组数据结合所述第二随机数按照连续的两个时钟周期进行分组扩展计算的分解操作,包括:

4.根据权利要求3所述的数据加密处理方法,其特征在于,所述第一设定函数的表达式为:

5.根据权利要求4所述的数据加密处理方法,其特征在于,分组扩展对应的两个时钟周期小于或等于单次迭代压缩的时间;

6.根据权利要求1所述的数据加密处理方法,其特征在于,调整分组扩展和迭代压缩之间的时序关系,包括:

7.根据权利要求1所述的数据加密处理方法,其特征在于,在将分组扩展计算后的数据进行对应组的迭代压缩计算的过程中,包括:

8.根据权利要求1所述的数据加密处理方法,其特征在于,还包括:

9.根据权利...

【专利技术属性】
技术研发人员:孙旭周玉龙刘刚满宏涛李拓
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

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

1