密码学中的可证明安全性-杨波-2014.11.11资料下载.pdf
《密码学中的可证明安全性-杨波-2014.11.11资料下载.pdf》由会员分享,可在线阅读,更多相关《密码学中的可证明安全性-杨波-2014.11.11资料下载.pdf(118页珍藏版)》请在冰豆网上搜索。
![密码学中的可证明安全性-杨波-2014.11.11资料下载.pdf](https://file1.bdocx.com/fileroot1/2022-11/3/6ece3b4f-fb4f-4e2d-b7f4-89f87539528f/6ece3b4f-fb4f-4e2d-b7f4-89f87539528f1.gif)
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约语义安全思维实验((thoughtexperiment))是用来考察某种假设、理论或原理的结果而假设的一种实验,这种实验可能在现实中无法做到,也可能在现实中没有必要去做。
思维实验和科学实验一样,都是从现实系统出发,建立系统的模型,然后通过模型来模拟现实系统。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约科学实验与思维实验图1-1:
科学实验与思维实验杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约科学实验与思维实验图1-2:
科学实验与思维实验杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约科学实验与思维实验图1-3:
薛定谔的猫系统是真空的、无光的杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性(IND-CPA)公钥加密方案在选择明文攻击下的IND游戏(称为IND-CPA游戏)如下:
1初始化:
挑战者产生系统,敌手获得系统的公开钥;
2挑战:
敌手输出两个长度相同的消息m0和m1。
挑战者随机选择b0,1,将mb加密,并将密文(称为目标密文)给敌手;
3猜测:
敌手输出b,如果b=b,则敌手攻击成功。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性(IND-CPA)公钥加密方案在选择明文攻击下的IND游戏(称为IND-CPA游戏)如下:
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性敌手的优势可定义为参数k的函数:
Adv,A(k)=|Prb=b12|其中k是安全参数,用来确定加密方案密钥的长度。
因为任一个不作为的敌手A,都能通过对b做随机猜测,而以12的概率赢得IND-CPA游戏。
而|Prb=b12|是敌手通过努力得到的,故称为敌手的优势。
Definition1.1如果对任何多项式时间的敌手A,存在一个可忽略的函数negl(k),使得AdvCPA,A(k)negl(k),那么就称这个加密算法在选择明文攻击下具有不可区分性,或者称为IND-CPA安全。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性如果敌手通过mb的密文能得到mb的一个比特,则有可能区分mb是m0还是m1,因此IND游戏刻画了语义安全的概念;
定义中敌手是多项式时间的,否则因为它有系统的公开钥,可得到m0和m1的任意多个密文,再和目标密文逐一进行比较,即可赢得游戏;
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性如果加密方案是确定的,如RSA算法、Rabin密码体制等,每个明文对应的密文只有一个,敌手只需重新对m0和m1加密后,与目标密文进行比较,即赢得游戏。
因此语义安全性不适用于确定性的加密方案。
与确定性加密方案相对的是概率性的加密方案,在每次加密时,首先选择一个随机数,再生成密文。
因此同一明文在不同的加密中得到的密文不同,如ElGamal加密算法。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性例:
ElGamal加密算法1密钥产生:
设G是阶为大素数q的群,g为G的生成元,随机选xZ*q,计算y=gxmodq.以x为秘密钥,(y,g,q)为公开钥。
2加密:
设消息mG,随机选一与p1互素的整数k,计算c1=gkmodq,c2=ykmmodq密文为c=(c1,c2).3解密:
m=c2/cx1modq.杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性例:
ElGamal加密算法安全性基于Diffie-Hellman判定性问题:
设G是阶为大素数q的群,g1,g2为G的生成元。
没有多项式时间的算法区分以下2个分布:
随机4元组R=(g1,g2,u1,u2)G4的分布;
4元组D=(g1,g2,u1,u2)G4的分布,其中u1=gr1,u2=gr2,rRZq.变形:
做代换g1g,g2gx,u1gy,u2gxy,2个分布变为:
3元组R=(gx,gy,gz)G3的分布;
3元组D=(gx,gy,gxy)G3的分布.杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择明文攻击下的不可区分性例:
ElGamal加密算法在ElGamal加密算法的IND-CPA游戏中,敌手输出两个长度相同的消息m0、m1,挑战者加密mb(b0,1),得C=(C1,C2)=(gkmodp,ykmbmodp)。
如果b=0,则(C1,y,C2/m0)=(gkmodp,gxmodp,gkxmodp)为Diffie-Hellman3元组。
如果b=1,则(C1,y,C2/m1)=(gkmodp,gxmodp,gkxmodp)为Diffie-Hellman3元组。
ElGamal加密算法然而,INDCPA安全仅仅保证敌手是完全被动情况时(即仅做监听)的安全,不能保证敌手是主动情况时(例如向网络中注入消息)的安全。
例如敌手收到密文为C=(C1,C2),构造新的密文C=(C1,C2),其中C2=C2m,解密询问后得到M=mm。
或者构造新的密文C=(C1,C2),其中C1=C1gk,C2=C2ykm,此时C1=gkgk=gk+k,C2=ykmykm=yk+kmm解密询问后仍得到M=mm。
再由Mmmodp,得到C的明文m。
可见,ElGamal加密算法不能抵抗主动攻击。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择密文攻击下的不可区分性(IND-CCA)为了描述敌手的主动攻击,1990年Naor和Yung提出了(非适应性)选择密文攻击(ChosenCiphertextAttack,简称为CCA)的概念,其中敌手在获得目标密文以前,可以访问解密谕言机(Oracle)。
敌手获得目标密文后,希望获得目标密文对应的明文的部分信息。
杨波Cryptology语义安全IBE的背景IBE的安全性选择明文安全的IBE方案选择密文安全的IBE方案IND-CPAIND-CCAIND-CCA2EUF-CMA规约公钥加密方案在选择密文攻击下的不可区分性(IND-CCA)IND游戏(称为IND-CCA游戏)如下:
挑战者产生系统,敌手A获得系统的公开钥。
2训练:
敌手向挑战者(或解密谕言机)做解密询问(可多次),即取密文c给挑战者,挑战者解密后,将明文给敌手。
3挑战:
敌手输出两个长度相同的消息m0和m1,再从挑战者接收mb的密文,其中随机值b0,1。
4猜测:
敌手输出b,如果b=b,则A成功。
挑战者产生系统,敌手A获得