知识点总结:
基本的RSA密码体制:参数、加密算法、解密算法
①随机地选择两个大素数p和q,而且保密;
②计算n=pq,将n公开;
③计算φ(n)=(p-1)(q-1),对φ(n)保密;
④随机地选取一个正整数e , 1
⑤根据ed=1 mod φ(n)时,求出d,并对d保密;
⑥加密运算:
C=Me mod n (2-42)
⑦解密运算:
M=Cd mod n (2-43)
由以上算法可知,RSA密码的公开加密钥Ke=,而保密的解密钥Kd=
。
说明:算法中的φ(n)是一个数论函数,称为欧拉(Euler)函数。φ(n)表示在比n小的正整数中与n互素的数的个数。例如,φ(6)=2,因为在1,2, 3, 4, 5中与6互素的数只有1和5两个数。若p和q为素数,且n=pq,则φ(n)=(p-1)(q-1) 。
例2-2 令p=47,q=71,n=47x71=3337,φ(n)=φ(3337)=46×70=3220 。选取e=79,计算d=e-1 mod 3220 =1019 mod 3220。公开e=79和n=3337 ,保密p=47,q=71,d=1019和φ(n)=3220 。
设明文M=688 232 687 966 668 3,进行分组,M1=688 , M2=232, M3=687,M4=966,M5=668,M6=003。M1的密文C1=68879 mod 3337=1570 ,继续进行类似计算,可得最终密文
C=1570 2756 2091 22762423 158。
如若解密,计算M1=15701019 mod 3337=688,类似地可解密还原出其他明文。
习题演练:
下列关于RSA密码体制特点的描述中,错误的是( )。
A.基于大整数因子分解问题
B.是一种公钥密码体制
C.加密速度很快
D.常用于数字签名和认证
参考答案:C
RSA体制被认为是迄今为止理论上最成熟、完善的一种公钥密码体制。RSA算法的安全性建立在难以对大数提取因子的基础上。RSA的缺点是加密、解密速度太慢,因此很少用于数据加密,而多用于数字签名、密钥管理和认证等方面。