今天在了解 HTTPS 工作的原理,其中有一个是 CA 公钥解密证书的数字签名,一般来说不是公钥进行加密,私钥进行解密吗?难道 CA 的加解密算法不是非对称加密?
1
xiri 2020-03-13 17:21:00 +08:00
CA 的作用是对生成的证书签名,以 CA 的公信力作为担保,证明这个证书是由可信任的机构颁发的
用 CA 的私钥签名,然后用户用早就安装到系统中的公钥验证签名,有什么问题吗? |
2
lululau 2020-03-13 17:38:13 +08:00
你说的没错,一般加密用公钥解密用私钥,对接过的很多系统都给搞反了。。。私钥加密公钥解密一般只用在签名和校验签名的时候,或者换句话说,摘要+私钥加密 = 常见的签名方式;公约解密+摘要+摘要比对 = 检验签名
|
3
lululau 2020-03-13 17:47:41 +08:00
"一般加密用公钥解密用私钥" :其实非对称机密一般都应该和对称机密组合使用,和 https 一样,所以一般非对称加密也只用在对对称加密的 secret 进行加密,对接过大多数系统都是用非对称加密加密全部数据。。。还有相当一部分在 https 里面又嵌了一层非对称加密,纯属脱了裤子放屁
|
4
leonme 2020-03-13 17:50:00 +08:00 via iPhone
签名和加密是两回事
|
5
Kahnn 2020-03-14 01:01:11 +08:00
其实简单理解,rsa 的公钥和私钥是一对可以互换的,加密和签名其实在数学上是同样的操作。实际中,公钥公开,用公钥加密只有私钥能解开一般称为“加密”,用私钥加密只有公钥能解开一般称为“签名”。
|
6
Kahnn 2020-03-14 01:02:39 +08:00
签名一般需要附在原文信息后面,用公钥解密签名得到和原文一致的信息,这个过程就是“验证签名”。
|