技术新讯 > 电子通信装置的制造及其应用技术 > 一种轻量级混淆AES电路中S盒的密文减少方法  >  正文

一种轻量级混淆AES电路中S盒的密文减少方法

  • 国知局
  • 2024-08-02 14:28:25

本发明涉及安全多方计算中的混淆电路协议,更具体的说是涉及一种轻量级混淆aes电路中s盒的密文减少方法。

背景技术:

1、目前,诞生于1982年的姚氏混淆电路仍然是一种有效的安全两方计算协议,它可以使得拥有隐私输入两方共同计算一个函数而保证不向对方泄露隐私输入。混淆电路在隐私保护领域有广阔的应用前景,其中已经有研究将其应用在在匿名投票、隐私集合求交等隐私保护协议中。在众多混淆电路的应用中,高级加密标准(aes)的安全计算是备受瞩目的。在安全计算aes的协议中,一方拥有明文消息,而另一方拥有一个密钥,两方执行安全计算aes协议后,拥有明文消息的一方可以得到被密钥加密后的密文,但对密钥一无所知,同时,拥有密钥的一方对明文消息也是一无所知。

2、aes的安全计算在许多领域都有应用,特别是在旁路保护、盲消息认证码(mac)、盲加密、对加密数据的第三方操作等方面。一个特别值得注意的应用是不经意伪随机函数(oprf)的构造,这是许多隐私保护技术的基础,包括私有集合交集(psi)、私有信息检索(pir)、私有关键字搜索(pks)、位置共享等。

3、有研究证明了一个基于安全aes计算的psi协议,与基于rsa盲签名的psi、基于diffie-hellman的psi和基于naor-reingoldprf的psi相比,实现了最高的效率。然而,由于使用混淆电路对aes的安全计算,该方法需要较大的通信开销,巨大的通信开销也一直是混淆电路难以克服的问题。

4、aes电路需要完成四种算法:字节替代、列混淆、行位移和轮密钥加。经过先前工作对这几个算法的电路实现优化后,只有字节替代算法需要传输密文(即产生通信开销)。其余的步骤——列混淆、行位移和轮密钥加——可以使用免费的异或门高效地执行。

5、在字节替代算法中的核心是s盒,在huang等人的论文中对此进行了研究。他们提出了两种混淆方案,一种最优总时间(在线时间较长),另一种是最优在线时间。第一种方案是将s盒计算的过程分解为一个电路,该电路主要完成在域gf(28)内求逆和位变换的计算,经过优化后,该电路最少需要58个非异或门(即需要传输密文的门)。第二种方案将s盒视为具有8条输入线和8条输出线的“门”电路,因此电路生成方需要使用8条输入线标签对该“门”进行混淆,以加密8条输出线标签,这个过程类似于在普通的布尔电路中对2输入的门进行混淆。这个方法最终需要8×28个密文,计算者只需要解密其中的8个(8个输出线标签)。第一种方法通信开销较小,但由于无法对计算进行预处理,而且需要多次调用密码原语(是第二种方法的100×),因此在线计算时间较长。后者虽然需要生成更多的密文,但电路生成方预处理,并且只需要调用4次密码原语,从而减少了在线时间。

6、但是,上述两种方案中均存在弊端,要么就是在线时间长,要么就是密文生成多。

7、因此,如何在保持最优在线时间的基础上,减少混淆aes电路中s盒的密文是本领域技术人员亟需解决的问题。

技术实现思路

1、有鉴于此,本发明提供了一种轻量级混淆aes电路中s盒的密文减少方法,以解决背景技术中存在的问题。

2、为了实现上述目的,本发明采用如下技术方案:

3、一种轻量级混淆aes电路中s盒的密文减少方法,包括:

4、步骤1:电路生成方初始化各个电路层,分别为:输入寄存器、输出寄存器以及四个算法电路层:字节替代电路层、行位移电路层、列混淆电路层和轮密钥加电路层;

5、步骤2:电路生成方生成aes密钥;

6、步骤3:电路生成方按照密钥拓展算法将生成的密钥在本地拓展为n轮密钥;

7、步骤4:在前n-1轮中,电路生成方按照aes算法结构,分别将各个电路层连接至输入寄存器和输出寄存器之间,按照免费异或门的混淆方案为各个导线生成导线标签,为非异或门生成混淆密文;

8、步骤5:当混淆至最后一轮的字节替代电路层时,电路生成方先为s盒的输出导线生成混淆比特,并为s盒生成混淆密文;

9、步骤6:电路生成方生成最终的解码向量,然后将整个混淆密文以及解码向量传输给电路计算方;

10、步骤7:电路生成方与电路计算方调用不经意传输协议进行最初输入导线标签的交付,电路生成方将混淆密钥的导线标签交付给电路计算方;

11、步骤8:电路计算方按照电路结构依次解密密文并通过解码向量得到最终输出寄存器上的比特输出,输出为被电路生成方密钥加密过的密文。

12、可选的,所述步骤4具体包括:

13、步骤4.1:为输入寄存器生成假导线标签生成全局偏移值δ;

14、步骤4.2:执行生成混淆密文gb算法。

15、可选的,所述gb算法具体包括:

16、步骤4.2.1:生成门的输出导线标签

17、

18、

19、其中i,j表示布尔电路门的两个输入导线,u表示输出导线;

20、步骤4.2.2:生成门的混淆密文:如果是异或门,则不用生成密文,如果是与门,则执行混淆与门算法;

21、步骤4.2.3:直至为所有的门生成密文和所有的导线生成标签后,将输出寄存器的导线标签传入输出寄存器,为下一个电路层的生成做准备。

22、可选的,所述混淆与门算法的具体步骤为:

23、步骤4.2.2.1利用与门的两个输入导线标签作为密钥加密相应的输出导线标签:

24、

25、步骤4.2.2.2:将密文按照通用的标记排列技术排列顺序,其中具体的步骤为,收集用于加密的两个导线标签的最后一位比特,按照序号从小到大排列成一个比特串,最后将密文按照相应比特串的值从小到大排列。

26、可选的,所述步骤5具体包括:

27、步骤5.1:对每个s盒的8个输入导线,电路生成方先随机生成8个混淆比特,并记录至相应的导线上;

28、步骤5.2:将s盒翻转比特表中的每一项位异或翻转比特,得到混淆s盒翻转比特表;

29、步骤5.3:将混淆比特按照电路结构传输至最终的输出寄存器上,混淆比特传输过程也需要进行计算,对于异或门来说,输出导线上的混淆比特等于两个输入导线上的混淆比特相异或;

30、步骤5.4:利用8个相应的输入导线标签作为密钥加密相应混淆后的s盒翻转比特串,最后产生密文,将密文按照通用标记排列技术进行排序。

31、可选的,所述标记排列技术的具体过程为:

32、步骤5.4.1:收集相应导线上导线标签的最后一个比特,按照序号从小到大排列成一个比特串;

33、步骤5.4.2:按照比特串值,从小到大排列相应得密文。

34、可选的,电路生成方生成解码向量的具体过程为:

35、步骤6.1:电路生成方采集最终输出寄存器上的输出线的假导线标签的最后一位比特,得到一个向量;

36、步骤6.2:电路生成方将向量与在最终输出寄存器上所记录的混淆比特相异或,得到最终解码向量;

37、步骤6.3:电路生成方将解码向量与生成的混淆密文表发送给电路计算方。

38、可选的,所述步骤7具体包括:

39、步骤7.1:电路生成方与电路计算方调用通用的不经意传输协议,其中电路计算方作为不经意传输协议中的接收者输入自己的明文比特,电路生成方作为不经意传输协议的发送者输入真标签和假标签,

40、步骤7.2:电路生成方将对应于自己密钥的导线标签发送给电路计算方;

41、其中,不经意传输协议协议过程如下:

42、对于第i条输入线,电路计算方输入比特bi;

43、电路生成方输入和

44、步骤7.1.3:电路计算方输出最终电路计算方得到对应于自己输入的导线标签

45、可选的,所述步骤8具体包括:

46、步骤8.1:在前n-1轮的迭代中,对各个电路层执行解密混淆密文算法:

47、步骤8.2:电路计算方解密第n轮中字节替代电路层的密文:

48、步骤8.3:电路计算方通过解码向量和最终输出导线标签得到被电路生成方密钥加密过的密文;

49、其中,步骤8.1包括:

50、步骤8.1.1:对于与门,电路计算方利用已经拥有的与门的两个输入标签解密对应的混淆密文得到与门输出导线的标签,其中需要解密的密文由两个输入标签的最后一位比特所决定,对于异或门,电路计算方通过异或异或门的两个输入标签得到输出标签;

51、步骤8.1.2:电路计算方按照电路的拓扑结构依次得到各个导线的标签,当计算完一个电路层后,电路计算方将输出寄存器的输出标签传输到输入寄存器的输入导线上,准备下一个电路层的混淆计算;

52、步骤8.2包括:

53、步骤8.2.1:对于第n轮中字节替代电路层的s盒,电路计算方用s盒的8个输入标签作为密钥解密256个混淆密文中的1个,其中解密混淆密文的位置由8个输入标签的最后一位比特决定;

54、步骤8.2.2:电路计算方将解密后的翻转比特和相应s盒输入导线标签的最后一位比特进行异或,异或的结果是s盒的输入导线标签;

55、步骤8.2.3:最终将输出寄存器的输出导线标签传输至输入寄存器,准备下个电路层的计算,然后重复步骤8.1.1的过程对接下来的电路层完成计算;

56、步骤8.3包括:

57、步骤8.3.1:完成n轮对所有电路层的计算后,电路计算方收集最终输出寄存器上的所有输出导线标签;

58、步骤8.3.2:电路计算方异或每个输出导线标签中最后一位比特与相应解码向量中的比特,所得的比特为输出比特值;

59、步骤8.3.3:电路计算方收集输出比特值,为被电路生成方密钥加密过的密文。

60、经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种轻量级混淆aes电路中s盒的密文减少方法,从而优化安全计算aes的计算与通信效率。本发明观察到aes电路的特殊结构——仅仅在字节替代算法中的s盒需要密文的传输(导致通信开销)和s盒的对称结构——8输入线到8输出线,结合免费异或门技术,改进了传统混淆电路协议中对输出线上的比特进行混淆,而是对一传翻转比特进行混淆,且为了保证信息不泄露加入了预翻转比特,最终将在最优在线时间方案中混淆单个s盒所需8×28个密文减少至28密文,而且在在线计算时仅仅需要调用一次密码原语,从而进一步减小了在线时间。

本文地址:https://www.jishuxx.com/zhuanli/20240801/242956.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。