数字签名、数字证书、加解密机制

410 阅读2分钟

加解密

1.加密方法可以分为两大类。一类是单钥加密(private key cryptography),还有一类叫做双钥加密(public key cryptography)。前者的加密和解密过程都用同一套密码,后者的加密和解密过程用的是两套密码。目前,通用的单钥加密算法为DES,通用的双钥加密算法为RSA

2.在单钥加密的情况下,密钥只有一把;在双钥加密的情况下,密钥有两把,一把是公开的公钥,还有一把是不公开的私钥。

3.双钥加密的原理如下:

a) 公钥和私钥是一一对应的关系,有一把公钥就必然有一把与之对应的、独一无二的私钥,反之亦成立。
b) 所有的(公钥, 私钥)对都是不同的。
c) 用公钥可以解开私钥加密的信息,反之亦成立。
d) 同时生成公钥和私钥应该相对比较容易,但是从公钥推算出私钥,应该是很困难或者是不可能的。

4.在双钥体系中,公钥用来加密信息,私钥用来数字签名

5.因为任何人都可以生成自己的(公钥,私钥)对,所以为了防止有人散布伪造的公钥骗取信任,就需要一个可靠的第三方机构来生成经过认证的(公钥,私钥)对。数字服务认证商主要业务就是分发RSA数字证书。

数字签名

信件摘要(data + hash函数)+私钥加密=数字签名
解密过程:取下数字签名,用公钥解密,得到信件的摘要(由此证明发信人身份),对信件本身使用Hash函数,将得到的结果,与得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。即可使用信件原文

数字证书

数字签名+证书认证中心私钥加密(CA) = 数字证书
解密过程:用CA的公钥解开数字证书(证明"数字签名"是否真的是发信人签的),后续就是数字签名本身的解密。

参考:

数字签名图文解释:www.ruanyifeng.com/blog/2011/0…
签名机制:juejin.cn/post/710456…
app签名的原理:juejin.cn/post/708797…