0
点赞
收藏
分享

微信扫一扫

数组证书,数字签名,HTTPS、keytool

云朵里的佛光 2022-03-30 阅读 32
java

数字证书,数字签名,公钥私钥,我参考了这篇文章

公钥和私钥

对称加密:解密和加密使用相同秘钥
非对称加密:公钥加密的内容使用私钥解密。私钥加密的内容使用公钥解密。

数字签名

公钥是公开的,私钥自己保留。当自己(A)要发出一段明文给B时,将其用私钥加密,若B能正确将其解密,则说明该段明文是由A发出,从而达到签名效果。
进化版:明文内容可能太多,因此将明文使用hash算法计算出摘要,例如SHA1是一种哈希算法,是一种单向函数,可将任何大小的输入转换为固定长度的输出(在这种情况下为160位),A对摘要进行加密,连同明文一起发送给B,B再将明文进行hash运算,将摘要用公钥解密,两者对比相等则说明签名正确。

数字证书

若C将B持有的公钥篡改,此时会出现问题。
解决:找一个受信任的机构,我们叫其CA,A将公钥和A的个人信息打包找CA使用CA的私钥进行加密,这样就形成了一个数字证书,将数组证书和要发送的内容一起发送给B,B再使用CA的公钥解密得到A的公钥和A的信息。
我的疑问1:若C偷了A的数字证书怎么办?
不用担心,数字证书里是A的公钥,若C用C的私钥加密,用公钥A是解密不了的

举报

相关推荐

0 条评论