是否可以对计算机程序进行加密,以使代码在保留其所有预期功能的同时完全无法理解?不可混淆性混淆(iO)的概念于2001年提出,但近二十年来,密码学家未能真正实现它。但是,今年早些时候,发表了一篇题为“来自有充分根据的假设的不可区分性混淆”的论文,这一情况发生了变化。
加密的全部目的是将数据或信息转换为无需加密密钥即可解密或理解的编码版本,以防止未经授权的访问。但是,任何网络安全专家都会同意加密并非无懈可击。仍然存在底层模式,并且只要有足够的时间和技能,就有可能破坏加密算法。
不可区分性模糊处理是一种加密原语,一种低级加密算法,可用于为计算机和应用程序安全性建立加密协议。密码研究人员为实现iO奋斗了近20年。自从2001年对该概念进行数学形式化处理以来,研究人员已尝试开发具有可证明的安全保证的iO。
难以区分的混淆通过将程序隐藏在其中的逻辑和知识并使之完全难以理解,从而将程序加密提高到另一个层次。
已经向学术界提出了解决方案。这项成就是团队合作的成果。该论文有三位合著者:Aayush Jain,加利福尼亚大学洛杉矶分校(UCLA)加密功能中心(CEF)的研究生研究员,以及NTT研究密码学和信息安全(CIS)实验室的研究实习生;保罗·G·艾伦计算机科学与技术学院副教授林慧佳(Rachel)Lin华盛顿大学工程学;和UCLA Samueli工学院的赛门铁克计算机科学讲座教授兼CEF主任Amit Sahai。
该解决方案基于四个有根据的假设。每个问题本身就是一个难题,解决起来在计算上是昂贵的。通过在配对组上组合对称的外部Diffie-Hellman(SXDH),在大字段上学习带错误的学习(LWE),带噪的学习奇偶性(LPN)以及易于计算的布尔型伪随机生成器(PRG) ,团队基于复杂性,编码和数论,基于具有悠久研究历史的计算问题的难度开发了iO。
“这一过程对我们所有人都是一个启发性的过程。结果令人深感满意;然而,旅途同样令人兴奋。在过去的几年中,这使我们探索了一些真正基本和美丽的问题,包括硬度平方,防渗漏的密码证明技术以及与平方和等级和平均情况下恒定硬度相关的算法问题。实多项式系统。我们还与理论计算机科学领域的一些最了不起的人进行了互动,并从中学到了东西。” Jain说。
团队发现的关键创新是一种利用两种假设(字段上的LPN和简单的布尔型PRG)创建结构化种子PRG的方法。 PRG的结构化种子由公共和私人元素组成。 这项创新至关重要的原因在于,结构化种子PRG非常易于计算。 通过建立结构化种子PRG,该团队可以通过借鉴先前的研究来实现iO的目标。 CIS实验室主任和NTT研究员冈本龙明(Tatsuaki Okamoto)在宣布学术论文的新闻稿中说:“到目前为止,密码学家可能对iO是否真正起作用还是存在怀疑,但这些结果令人信服。” “而且由于iO隐含着许多强大的密码功能,如果没有iO,这些功能将很难实现,这意味着我们的密码世界现在变得更加丰富和强大。”