加密技术入门——从对称加密到CA证书

原创
2016/03/10 15:34
阅读数 276

#加密技术入门——从对称加密到CA证书 ##几个基本概念

对称加密

对称加密是最传统的加密方式,简单说就是用一个密钥对原文加密,再用同样密钥对原文解密。对称加密的优点就是加密速度快,但是缺点也很明显,密钥的传递无法保障。常见的对称加密算法有DES、3DES、AES等

非对称加密

为了解决密钥传递的问题,聪明的人类罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman) RSA

发明了非对称加密算法RSA。简单来说就是有一个公钥和一个私钥,私钥自己保留,公钥分发给别人。可以用公钥加密用私钥解密,也可以用私钥加密用公钥解密,但是不能用私钥加密私钥解密,也不能用公钥加密公钥解密。非对称加密很好的解决了对称加密中的密钥传递的问题。

摘要

摘要可以看作是你传递的内容的唯一指纹,独一无二的。摘要的这个特征能很好的验证传递的内容是否被别人篡改了。摘要最著名的算法当属MD5,更安全的可以采用SHA。

##一个典型的应用场景

A(客户端)传递给B(服务器端)一段内容,要求不被篡改,密钥不能公开

输入图片说明

  1. A用对称加密des将原文加密
  2. A用md5对原文生成摘要
  3. A用B给的公钥(PB)将对称密钥加密
  4. B接到上述内容后,先用自己的私钥(SB)解密,获得对称密钥
  5. 用对称密钥解密密文获得原文
  6. 将解密出来的原文进行md5获得摘要2
  7. 用摘要1和摘要2比对,看看是否一致
  8. 如果一致表示内容没有篡改,是一个可信的内容

问题

这存在一个安全隐患,A的身份B无法确认,B不能确定这段密文一定是A给他发的。解决方案就是用数字签名。

##数字签名

数字签名其实就是非对称加密和摘要的结合使用。原理很简单,对称加密支持私钥加密,公钥解密。那么我们用A的私钥加密,如果能用A的公钥解密那就能确定这段内容一定是A发送的。非对称加密效率较低,所以通常会结合摘要来实现。

##数字信封 上述场景结合数字签名其实就是一个数字信封的应用。

输入图片说明

交互过程基本相同,唯一不同的地方就是摘要需要用A的私钥(SA)加密,B收到后用A公钥(PB)来获得摘要1。

问题

问题1:B(服务器端)需要知道所有A(客户端)的公钥

问题2:B(服务器端)和A(客户端)的公钥变得十分重要,公钥是公开的,如果其他人冒充身份提供公钥如何解决?

##CA数字证书 解决公钥可靠性的方法就是CA数字证书。公钥的分配都有一个可信的机构来分配,就是CA。

  1. CA用它的私钥做数字签名就是CA提供的证书:证书=CA的私钥(B的身份+B公钥)
  2. 客户端获取证书 -> CA的公钥(证书)-> 获得B的身份和B的公钥
展开阅读全文
打赏
2
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
2
分享
返回顶部
顶部