最美的时光|暗藏在QQ邮箱、百度网盘的国密算法到底是如何实现的?( 三 )


最美的时光|暗藏在QQ邮箱、百度网盘的国密算法到底是如何实现的?2、非对称加密(Asymmetric Key Encryption)
公开密钥加密(Public-key cryptography) , 也称为非对称加密(asymmetric cryptography) , 是密码学的一种算法 , 它需要两个密钥 , 一个是公开密钥 , 另一个是私有密钥;一个用作加密的时候 , 另一个则用作解密 。 使用其中一个密钥把明文加密后所得的密文 , 只能用相对应的另一个密钥才能解密得到原本的明文;甚至连最初用来加密的密钥也不能用作解密 。 由于加密和解密需要两个不同的密钥 , 故被称为非对称加密 。
? 公钥(Publish Key)加密 , 私钥(Private Key)解密
这个过程就相当于是A和B要通信 , B把公钥发给A , 或者直接公开在网上 , 你要给我发消息 , 就请用密钥C来加密 , 然后B收到加密后的消息c(x)后 , 就用自己的私钥来解密 , 得到实际的明文消息x 。
比喻成数学公式 , 就是【d(c(x)) = x】 , d就是私钥 , 只有接收者自己知道 。
? 私钥(Private Key)加密 , 公钥(Publish Key)解密
你自己发一个消息的时候 , 用你的私钥去加密这个消息 , 然后将你的公钥公开给所有人 , 任何人都可以用这个公钥来解密你的消息 。 解不开说明私钥不对 , 也就是相当于 , 要证明这个消息是你发的 , 就是用公钥解开密文 。
接收方可以通过此来判断消息途中是否有被篡改 , 也可防止用户抵赖 , 所以这个也被称之为数字签名 , 因为只有你才能把明文a加密成b , 且b可以被公钥解密出来得到明文a , 能够做到这件事情的只有你 , 其他人都不行 。
以上的两种非对称加密的方式 , 更合适在互联网环境下使用 , 若采用对称加密 ,你无法去保证传输密钥的过程的安全性 。
---文末彩蛋---
? 常见的加密算法: TODO
? 证书: TODO
? 加密算法思维导图: TODO 这边自己画一张图上去
? SSL: TODO 这个可以补充一下啊 , 尤其是openssl , 感觉有好多可以扯的
? 国密算法:
放到下一章节去 , 这边字数不够了 , 这一篇叫 , 国密预告 , 热身篇
? 参考链接
哈希算法:
原文地址:
【最美的时光|暗藏在QQ邮箱、百度网盘的国密算法到底是如何实现的?】作者:小小伟