Public-key Cryptosystems in the Random Oracle Model
Standard model VS Random Oracle model
标准模型:一种广泛接受的安全模型,值得注意的是标准模型不一定是最为安全的模型。
随机谕言机模型:存在至少一个函数可以当做谕言机的模型,只能证明不存在“出厂硬伤”。
相同点:都是为了构造安全证明的模型,但是对各种安全风险的捕获方式不同。
不同点:设计安全规约时,调用敌手能力解决潜在困难问题的设计不同。
CPA安全的RSA方案----在随机谕言机模型下
方案构造如下:

安全定义:

证明:
构造实验如下:

注意:我们目前是要证明CPA安全,所以由标准的CPA安全模型,我们得到RSA方案的CPA实验:
1. 一个随机函数被选择。
2. 运行GenRSA算法生成系统参数,敌手获得公钥,并且敌手具有哈希请的能力。最后敌手输出两个消息m0,m1.
3. 随机选择一个比特,对上述两个明文之一进行加密,得到挑战密文,将密文发送给敌手。同样的,敌手可以继续进行哈希询问。
4. 最后敌手输出猜测的比特,如果和挑战者选择的比特相同,则实验结束。
这里有一个点很重要:哈希询问是否能帮助敌手获取攻破敌手的优势?
答案是不能,敌手能否攻破密码方案,与哈希请求几乎无关,进一步,我们尝试计算敌手成功的概率。

敌手攻破方案,看来无非两种情况,第一种是请求哈希询问后成功攻破,第二种是不请求哈希询问成功攻破。如果
那么,非常容易,成功概率仅仅取决于敌手的擦侧结果,我们得到
,
很明显敌手成功的概率小于等于二分之一。
如果不请求的概率不等于0,那么由条件概

本文探讨了在随机谕言机模型下,RSA公钥加密系统的CPA和CCA安全性的证明过程。通过分析敌手的行为和哈希请求的影响,证明了RSA方案在随机谕言机模型下的CPA和CCA安全性。
最低0.47元/天 解锁文章
681

被折叠的 条评论
为什么被折叠?



