② 计算(n)。用户再计算出 n 的欧拉函数
(n) (p 1)(q 1)
(9-9)
(n) 定义为不超过 n 并与 n 互素的数的个数。
③ 选择 e。用户从[0, (n) 1]中选择一个与 (n)互素的
数 e 作为公开的加密指数。
(2) 密钥的产生(续)
④ 计算 d。用户计算出满足下式的 d
但从已知的PK不可能推导出SK。
(2)认证模型:发方私钥加密,发方公钥解密 数字签名的原理
RSA算法: RSA算法是由Rivest,Shamir和Adleman于1978年 提出的,曾被ISO/TC97的数据加密委员会SC20推 荐为公开数据加密标准。 RSA体制是根据寻求两个大素数容易,而将他们的 乘积分解开则极其困难这一原理来设计的。
ed 1 mod (n)
作为解密指数。 ⑤ 得出所需要的公开密钥和秘密密钥:
公开密钥(即加密密钥)PK {e, n} 秘密密钥(即解密密钥)SK {d, n}
(9-10)
(3) 正确性的例子说明
设选择了两个素数,p 7, q 17。 计算出 n pq 7 17 119。 计算出 (n) (p 1)(q 1) 96。 从[0, 95]中选择一个与 96 互素的数e。 选 e 5。然后根据(9-10)式,
公钥加密机制根据不同的用途有两种基本的模型: (1)加密模型:收方公钥加密,收方私钥解密
用于加密模式的公开密钥算法具有以下特点:
用加密密钥PK对明文X加密后,再用解密密钥 SK解密即得明文,即DSK(EPK(X))=X;
加密密钥不能用来解密,即DPK(EPK(X)≠X; 在计算机上可以容易地产生成对的PK和SK,
将明文数据进行某种变换,使其成为不可理解 的形式,这个过程就是加密,这种不可理解的 形式称为密文。