查看原文
其他

密钥泄漏及其解决方法

黄欣沂 开放隐私计算
2024-09-16


2023年10月16日至10月18日,第一届数据安全与隐私保护国际研讨会Data Security and Privacy Protection(DSPP)2023在中国西安举办。此次会议由西安电子科技大学、国家重点实验室、澳大利亚研究委员会、西安市数据安全与隐私保护国际科技合作基地和IEEE计算机协会共同承办。课题组成员参加此次研讨会后,整理了部分报告内容,旨在分享个人参会收获与感悟。报告所有版权属原报告人所有。

报告人介绍

黄欣沂,香港科技大学(广州)人工智能学域副主任、副教授;担任中国密码学会理事。获教育部青年长江学者、国家优青、教育部自然科学奖一等奖、中国密码学会密码创新奖一等奖、欧洲计算机安全年会最佳论文奖等荣誉。主要研究方向为应用密码学、隐私保护、同态密码、面向机器学习的密码技术等。学术研究发表论文 180 余篇,谷歌学术引用13000余次,H-index 59。任ACM Asia CCS 2016 PC 主席、国际密码学会亚密会Asiacrypt 指导委员会委员、欧洲计算机安全年会ESORICS PC 委员、《密码学报》、《中国科学:信息科学》、JCST等国内学术期刊编委、IEEE TDSC、The Computer Journal等国际学术期刊编委、商用密码算法评审会专家。另主持国家自然科学基金重点项目 (基于我国商用密码的区块链安全保护研究)

研究背景
加密密钥的作用是维护敏感数据的机密性,一旦密钥泄露,攻击者便有可能绕过加密保护,访问敏感数据或者冒充合法用户。然而,目前用户测试加密算法或芯片的方法仅限于验证输入和输出是否正常和一致,无法评估黑盒内部结构是否符合已知的算法结构。因此,在强对抗环境下,密钥保密性可能会因密钥隐私窃取(如棱镜监听核心技术的使用)和密钥强制托管(如在高度受控的系统中)两类攻击而受到破坏。

1. 密钥隐私窃取:利用密码算法实现暗中窃取密钥信息。以算法替换攻击(ASAs)为例,敌手在设定加密算法时会附加设置后门密钥,且保证算法的输入输出与原算法相同。算法用户使用该算法时无法通过常规手段检测到后门密钥和算法异常,而攻击者则可以利用后门密钥获取到与明文或用户密钥相关的信息。下图为ASAs攻击的示例图以及在对称加密中的实例图。


 2. 密钥强制托管:一般较强大的加密系统均会保留解密信息所需的密钥副本,并在合法的授权下由第三方机构进行管理。然而,这种情况可能面临系统权限滥用或第三方不可信的风险,导致密钥泄露。




解决办法

针对以上两种密钥泄露攻击,分别有以下分析和解决办法:
  1. 对于一般的公钥加密算法,ASAs攻击能够成功是因为每次对明文加密后密文均携带了特定的隐匿信息,而这些隐匿信息可用于生成后门密钥。为了避免收到携带隐匿信息的密文,可对密文进行检测或清洗。目前因检测难度较大,而多采用清洗。重随机加密(Rerandomizable Encryption)是密文清洗最常用手段,其过程如下:


(1)首先每个明文通过不同随机数生成不同密文(密文集合对应的明文相同);

(2)将密文扩展到完整的密文空间;

(3)在这个密文空间中进行随机抽样。




通过这种方式下生成的密文是真随机的正常密文,不会携带隐匿信息。

2. 密钥强制托管会破坏公钥加密算法中的两种假设——发送者自由假设(即发送者可自由选择要加密信息)和接收者隐私假设(即接收者的私钥不可泄露)。在密钥强制托管的系统中,第三方会要求发送者发送特定数据,并通过密钥或随机数检查密文是否符合要求。而第三方也将持有接收者的私钥,这导致接收者隐私严重泄露。

为了解决以上问题,国内外学者开始利用密文的二义性(即使一个密文可以对应两个明文)构建保密通讯,常用方式是可隐写加密(Anamorphic Encryption)。针对加密算法中的两种强制性假设,可隐写加密可分为:

(1)接收者隐写加密:设置一个发送者和接收者共享的第二密钥(double key),发送者利用系统规定的标准加密算法加密掩护明文和真实明文,接收者收到相应密文后通过私钥解密。若接收者利用已托管私钥(secret key)解密仅可得到掩护明文,而通过第二密钥的私钥解密才能得到真实明文。下图为接收者隐写加密算法示意图。

(2)发送者隐写加密:相当于将一个密文同时对应两个人。Alice加密得到的密文,通过Bob私钥解密仅能得到掩护明文,而通过Carol私钥解密才能得到真实明文。下图为发送者隐写加密算法示意图。

技术挑战

1. 对于重随机化,虽然文献《Rerandomizable RCCA Encryption》实现了该功能,但因其实现的“通用哈希证明”安全要求过高,导致与目标要求不匹配。


2. 对于可隐写加密,设计目标存在矛盾,既要保证稳健性(解密者能辨别含有隐匿信息的密文和无隐匿信息的密文),又要保证公共随机性(使监管者相信密文是真实的)。


总结


针对以上问题,黄欣沂教授团队进行了以下两方面的工作:
1. 改进现有重随机加密方案,如将掩码移动到密文中、改变投影哈希函数使其支持重随机化等,最终利用Paillier假设提出了高安全且支持重随机化的通用加密算法。此外,该团队还将重随机化功能推广到标识体系下,实现了标识基加密算法的密文净化和清洗。

2. 为了满足稳健性且更方便地传输隐匿信息,增加加密的真实明文和密钥对数量,并使接收者能通过类ASAs的方式获取随机数以验证密文是否携带隐匿信息。下图为扩大密文信息空间的加密算法示意图和利用算法替换攻击方式提取随机数的示意图。


其中,利用算法替换攻击方式提取随机数的主要思想是,使接收者在混合PKE算法的密钥封装阶段能够获取随机数。接收方先利用密文和后门密钥计算出随机数,随后再根据该随机数计算出密文。最后接收者对比计算的密文与对方发送的密文,若相同则说明对方想传递隐匿信息,否则说明对方计算的是真实密文。此混合加密算法的巧妙之处在于,为解决密钥强制托管问题而采用了隐私窃取中的类算法替换攻击的方法。这种采用算法替换攻击方法来解决实际密钥泄露问题的方式,不仅为密钥强制托管问题提供了新的解决方案,也为其他安全领域的研究提供了新的思路。

分享嘉宾:黄欣沂,香港科技大学(广州)人工智能学域副主任、副教授

本文来源:Crypto Lab

END

热门文章:




隐私计算头条周刊(10.30-11.5)


基于隐私计算的电力数据共享技术系统解决方案及应用


招标 | 近期隐私计算项目招标中标案例


2023年隐私保护领域的现状和未来


加入我们丨OpenMPC社区招募实习生

素材来源官方媒体/网络新闻
继续滑动看下一个
开放隐私计算
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存