Rabin密码体制
Rabin密码概念
Rabin密码是对RSA密码体制的一个改进。因为在RSA密码体制下,一旦n被分解成功,则RSA密码体制就被破译,因此破解RSA密码体制的难度不超过大整数的分解。而Rabin密码体制已经被证明破译难度和分解大整数一样困难。
与RSA相比,Rabin有如下几个特点:
1.Rabin不是以一一对应的单向陷门函数为基础,对同一密文,可能有两个以上对应的明文
2.破译该体制等价于对大整数的分解
3.Rabin密码体制下直接选取e=2
Rabin密码体制流程
从密钥产生、加密过程、解密过程几个方面来讲解Rabin密码体制
密钥产生
随机选择两个大宿主p、q,满足条件为p≡q≡3 mod 4,即p和q可用4k+3的形式表示,n=p×q。
公钥是n,私钥是p、q。
加密过程
加密过程为:
解密过程
解密过程就是求c模n的平方根,即解方程x2 ≡ c mod n。由于n可分解为p×q。因此方程可等价于以下方程组:
由于p≡q≡3 mod 4,可以很容易地解出方程组的解为:
经过组合可得到4个同余方程组如下:
由中国剩余定理可解出每一个方程组的解,共有4个解,由此可见每一个密文对应的明文不唯一。
为了使明文唯一,可以在m中加入某些信息,如发送者的身份号、接受者的身份号、日期、时间等条件