1.一种针对双随机偏振编码加密系统的选择明文攻击,攻击过程如图1所示,包括如下步骤:
1)将待加密的图像为f(j,k)利用双随机偏振编码加密系统算法进行加密得到密文图像e(j,k),加密密钥M(j,k)、N(l,m)未知,双随机偏振编码加密方法如下:e(j,k)=FT-1{N(l,m)FT{M(j,k)f(j,k)}}其中:
FT{}表示傅里叶变换,FT-1{}表示逆傅里叶变换;
2)选择两个偏振态分别为f1(j,k)=[1,0]T和f2(j,k)=[0,1]T的图像作为已知的明文,并利用上述加密算法及密钥加密得到密文e1(j,k)和e2(j,k);
3)f1(j,k)和f2(j,k)经过输入面随机偏振模板M(j,k)之后的偏振态可以分别表示为:
4)将P1(j,k)和P2(j,k)傅里叶变换可以得到频谱面加密之前的偏振态:我们可以发现,g1的y方向分量与g2的x向分量仍然相等,因此,我们可以将这两个偏振态表示为:
5)为了方便计算,我们将第二块随机偏振模板简写为:利用频谱面密钥N(l,m)加密得到:
5)对密文e1(j,k)和e2(j,k)进行傅里叶变换就可以得到频谱面加密之后的偏振态G1(l,m)和G2(l,m):将他们带入上面两个式子,就可以得到下面这组方程组:通过求解这个方程组我们就可以算出频谱面上的密钥N(l,m)和频谱面的偏振态g1(l,m)和g2(l,m),再将g1(l,m)和g2(l,m)经过逆傅里叶变换得到输入面加密之后的偏振态,再结合已知的明文信息推导出输入面的加密密钥M(j,k)。