论文部分内容阅读
证据加密(witness encryption,WE)是一个新型的密码学原语,这个概念是由Garg,Gentry,Sahai和Waters在2013年首次提出并定义,它与普通密码体制的两个最大区别在于不需要初始化的步骤而且解密者不是事先设定的。证据加密既是一个独立的加密方案,也可以作为其他密码学方案的基础部件,比如用于构造公钥密码、基于属性的加密、基于口令的加密等。目前,证据加密的构造方法大致可以分为三种:基于多线性映射,基于证据伪随机函数和基于不可区分性混淆。 本文对证据加密的研究主要取得两个结果: (1)提高了对GGSW证据加密方案的攻击速率。第一个证据加密方案(GGSW方案)的构造基于精确覆盖问题和GGH多线性映射。该方案已经被Hu和Jia攻破,攻击中的三个关键技术为构造“组合精确覆盖”、提取“等价秘密”和修正的编解码。根据这些技术,本文提出一种变型的攻击方法,仅需要提取部分编码的等价秘密,可以极大地提高对GGSW证据加密和对GGH密钥交换协议的攻击速率。 (2)提出一种基于非线性布尔函数构造证据加密的方法。本文首先提出基于有限域上多变量多项式构造证据加密的设想,以非线性布尔方程组为困难性实例,知道方程组的任何一个解的接收者就可以解密。具体地说,可以将随机比特转化为关于实例的布尔函数,再从转化的布尔函数中恢复出原来的随机比特。其实现方式是利用合成映射的方法构造一个与问题实例具有相同解空间的方程组,知道证据的接收者可以使用新构造的复合映射生成封装密钥,不知道者则生成乱码。这个方法的安全性基于分解多变量复合函数的困难性。另外,利用不可区分混淆也可以实现相同的功能,即借鉴Sahai与Waters提出的“Punctured Programs”技术,将关于问题实例的布尔函数组与一个伪随机函数结合用来生产封装密钥,之后将整个过程混淆用来隐藏实现细节。在此基础上可以得出一个应用更广泛的结论,即使用不可区分性混淆和证据关系验证程序实现对封装密钥生成器的“访问控制”来构造证据加密。