说得直白点,数字证书(Digital Certificate)即通过对通信双方(比如浏览器和服务器)之间传输的数据进行加密以达到安全通信的目的。除了加密功能外,数字证书还用于身份认证,即数字证书就像是居民身份证一样,能够向别人证明“你确是你”。

一点点理论基础

我们都知道,HTTP协议对数据采用明文传输,浏览器和服务器之间的所有数据传输都赤裸裸地暴露在互联网上,包括你在登陆某个网站时输入的密码。为了解决这个问题,前人发明了对数据进行加密传输的HTTPS协议,该协议又建立在SSL/TLS协议之上。SSL/TLS位于HTTPS与TCP协议之间,是实现数据加密的核心协议,其本质上讲是对TCP协议的一层封装。由此可见,SSL/TLS其实不止可以用于HTTP,任何采用TCP协议的数据通信都可以采用SSL/TLS进行传输,比如FTP。只是就当前而言,SSL/TLS最为广泛的应用在于HTTPS。

在计算机密码学里,存在着对称加密和非对称加密两种加密方式,对称加密即通信双方均使用相同的密钥,如果Alice要将密文发给Bob,那么她首先需要将密钥发给Bob,那么问题来了——密钥又通过什么方式能够安全地发给Bob?为了解决这个问题,出现了非对称加密算法,即加密采用一个密钥,解密采用另一个密钥,两个密钥组成一个密钥对,由一个密钥加密的数据只能由密钥对中另一个密钥才能解密,最典型的非对称加密算法非RSA莫属。RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥,即公钥(Public Key),而两个大素数组合成私钥(Private Key)。公钥是可发布的供任何人使用,私钥则为自己所有,供解密之用。SSL/TLS便使用了非对称加密。

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式