侧信道攻击防御方法、装置、电子设备和存储介质
- 国知局
- 2024-08-02 14:59:37
本发明涉及网络安全,尤其涉及一种侧信道攻击防御方法、装置、电子设备和存储介质。
背景技术:
1、由寄存器向存储器进行数据写入的过程通常存在严重的侧信息泄露。密码算法在运行过程中涉及大量的中间数据和复杂的运算过程,无法避免向存储器写入数据。攻击者借助适当的分析模型,利用泄露的功耗、电磁、时间等侧信息,可以对敏感数据实行恢复。为保障密码算法的安全性,必须提出行之有效的侧信道攻击防御方法。
2、目前,采用掩码策略对中间值进行随机化,或者采用随机洗牌策略打乱密码算法原先的执行顺序,仍存在敏感数据以侧信息形式泄露的问题,采用双轨预充电逻辑电路技术虽然能使功耗保持稳定,防止敏感数据以侧信息形式泄露,但需要对密码设备进行重新设计,会引入相当多的冗余电路结构,生产设计成本高,运行时的功耗较高。
技术实现思路
1、本发明提供一种侧信道攻击防御方法、装置、电子设备和存储介质,用以解决现有技术中采用掩码策略或随机洗牌策略,难以有效防御侧信息攻击,采用双轨预充电逻辑电路技术,生产设计成本高,运行时的功耗较高的缺陷。
2、第一方面,本发明提供一种侧信道攻击防御方法,包括:
3、获取密码算法的第一中间值,确定所述第一中间值对应的二进制数据;
4、对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,在所述寄存器中确定所述第一中间值和取反后的第一中间值;
5、将所述第一中间值和所述取反后的第一中间值同时从所述寄存器写入存储器。
6、在一些实施例中,所述第一中间值对应的二进制数据包括n个比特,n为大于等于1的自然数;
7、所述对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,包括:
8、按照从低位到高位的顺序,对所述第一中间值对应的第1个比特进行取反,得到所述第一中间值对应的第1个比特的反值,将所述第一中间值对应的第1个比特和第1个比特的反值同时存放到寄存器中,对所述第一中间值对应的第2个比特进行取反,得到所述第一中间值对应的第2个比特的反值,将所述第一中间值对应的第2个比特和第2个比特的反值同时存放到寄存器中,以此类推,对所述第一中间值对应的第n个比特进行取反,得到所述第一中间值对应的第n个比特的反值,将所述第一中间值对应的第n个比特和第n个比特的反值同时存放到寄存器中。
9、在一些实施例中,所述对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,在所述寄存器中确定所述第一中间值和取反后的第一中间值,包括:
10、对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到特定的寄存器中,在所述寄存器中确定所述第一中间值和所述取反后的第一中间值,限制所述第一中间值和所述取反后的第一中间值在不同寄存器之间的移动,禁止所述第一中间值对应的二进制数据以完整的形式参与取反运算。
11、在一些实施例中,所述依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,包括:
12、将所述第一中间值对应的每一比特存放到所述寄存器的低位;
13、将所述第一中间值对应的每一比特的反值存放到所述寄存器的高位。
14、在一些实施例中,所述将所述第一中间值和所述取反后的第一中间值同时从所述寄存器写入存储器之后,还包括:
15、获取密码算法的第二中间值,确定所述第二中间值对应的二进制数据;
16、对所述第二中间值对应的二进制数据进行逐比特取反,依次将所述第二中间值对应的每一比特和每一比特的反值存放到所述寄存器中,在所述寄存器中确定所述第二中间值和取反后的第二中间值;
17、将所述第二中间值写入所述存储器的特定存储单元,覆盖所述取反后的第一中间值,将所述取反后的第二中间值写入所述存储器中与所述特定存储单元紧邻的空闲存储单元。
18、在一些实施例中,所述第二中间值对应的二进制数据包括k个比特,k为大于等于1的自然数;
19、所述对所述第二中间值对应的二进制数据进行逐比特取反,依次将所述第二中间值对应的每一比特和每一比特的反值存放到寄存器中,包括:
20、按照从低位到高位的顺序,对所述第二中间值对应的第1个比特进行取反,得到所述第二中间值对应的第1个比特的反值,将所述第二中间值对应的第1个比特和第1个比特的反值同时存放到寄存器中,对所述第二中间值对应的第2个比特进行取反,得到所述第二中间值对应的第2个比特的反值,将所述第二中间值对应的第2个比特和第2个比特的反值同时存放到寄存器中,以此类推,对所述第二中间值对应的第k个比特进行取反,得到所述第二中间值对应的第k个比特的反值,将所述第二中间值对应的第k个比特和第k个比特的反值同时存放到寄存器中。
21、第二方面,本发明提供了一种侧信道攻击防御装置,包括:
22、第一获取单元,用于获取待存储的第一中间值,确定所述第一中间值对应的二进制数据;
23、第一取反单元,用于对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,在所述寄存器中确定所述第一中间值和取反后的第一中间值;
24、第一存储单元,用于将所述第一中间值和所述取反后的第一中间值同时从所述寄存器写入存储器。
25、第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述侧信道攻击防御方法。
26、第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述侧信道攻击防御方法。
27、第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述侧信道攻击防御方法。
28、本发明提供的侧信道攻击防御方法、装置、电子设备和存储介质,通过获取密码算法的第一中间值,对第一中间值对应的二进制数据进行逐比特取反,依次将第一中间值对应的每一比特和每一比特的反值存放到寄存器中,将第一中间值和取反后的第一中间值同时从寄存器写入存储器,使得由寄存器到存储器的存储过程所涉及到的数据的汉明重量始终保持恒定,成本低,有效避免了数据在存储过程中以功耗、电磁等物理量形式的泄露,从根本上解决了侧信道存储漏洞,提高了数据存储的安全性。
技术特征:1.一种侧信道攻击防御方法,其特征在于,包括:
2.根据权利要求1所述的侧信道攻击防御方法,其特征在于,所述第一中间值对应的二进制数据包括n个比特,n为大于等于1的自然数;
3.根据权利要求1所述的侧信道攻击防御方法,其特征在于,所述对所述第一中间值对应的二进制数据进行逐比特取反,依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,在所述寄存器中确定所述第一中间值和取反后的第一中间值,包括:
4.根据权利要求1任一项所述的侧信道攻击防御方法,其特征在于,所述依次将所述第一中间值对应的每一比特和每一比特的反值存放到寄存器中,包括:
5.根据权利要求1-4任一项所述的侧信道攻击防御方法,其特征在于,所述将所述第一中间值和所述取反后的第一中间值同时从所述寄存器写入存储器之后,还包括:
6.根据权利要求5所述的侧信道攻击防御方法,其特征在于,所述第二中间值对应的二进制数据包括k个比特,k为大于等于1的自然数;
7.一种侧信道攻击防御装置,其特征在于,包括:
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述侧信道攻击防御方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述侧信道攻击防御方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述侧信道攻击防御方法。
技术总结本发明提供一种侧信道攻击防御方法、装置、电子设备和存储介质,属于网络安全技术领域,其中方法包括:获取密码算法的第一中间值,确定所述第一中间值对应的二进制数据;对第一中间值对应的二进制数据进行逐比特取反,依次将第一中间值对应的每一比特和每一比特的反值存放到寄存器中,在寄存器中确定第一中间值和取反后的第一中间值;将第一中间值和取反后的第一中间值同时从寄存器写入存储器。本发明提供的侧信道攻击防御方法、装置、电子设备和存储介质,成本较低,能够有效避免数据在存储过程中以功耗、电磁等物理量的形式泄露,从根本上解决了侧信道存储漏洞,提高了数据存储的安全性。技术研发人员:王竹,杜剑峰,于爱民受保护的技术使用者:中国科学院信息工程研究所技术研发日:技术公布日:2024/7/29本文地址:https://www.jishuxx.com/zhuanli/20240801/244598.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表