


加密算法之非对称密钥加密
转自维基百科,自由的百科全书
非对称金钥加密(英语:Public-key cryptography),该思想最早由雷夫·莫寇(Ralph C. Merkle)在1974年提出,之后在1976年。狄菲(Whitfield Diffie)与赫尔曼(Martin Hellman)两位学者以单向函数与单向暗门函数为基础,为发讯与收讯的两方建立金钥。
该加密算法使用两个不同的金钥,各名为加密金钥和解密金钥。前者公开,又称公开金钥,简称公钥。后者保密,又称私有金钥,简称私钥。这两个金钥是数 学相关,用某用户加密金钥加密后所得的信息,只能用该用户的解密金钥才能解密。RSA算法(由发明者Rivest、Shmir和Adleman姓氏首字母 缩写而来)是著名的公开金钥加密算法,相关公钥密码系统还有El Gamma、RSA、椭圆曲线密码学等。公钥加密的另一用途是身份验证:用私钥加密的信息,可以用公钥对其解密。接收者由此可知:这条信息确实来自于拥有 私钥的某人,公钥的形式就是数字证书。
优点
与对称密钥加密相比,优点在于无需共享的通用密钥,解密的私钥不发往任何用户。即使公钥在网上被截获,如果没有与其匹配的私钥,也无法解密,所截获的公钥是没有任何用处的。
过程
假设两个用户A,B进行通信,公钥为c,私钥为d,明文为x.
1. A用公钥对明文进行加密形成密文c(x),然后传输密文;
2. B收到密文,用私钥对密文进行解密d(c(x)),得到要通信的明文x。
公钥密码学
在密码学中,公开钥匙密码学,简称公钥密码学,又称非对称密码学,是使用一对公钥和私钥的密码学,与只用一个钥匙的密钥密码学相对应。通常,我们所说的公 钥密码学包括公钥加密算法和数字签名算法。有些公钥加密算法可以很容易被改造成一个数字签名算法(如RSA),而有些则需要经过较大改动。

