什么是ssl证书?
粗浅的理解一下什么是ssl证书
http协议,https协议,ssl协议,ssl证书。
- http协议是传统的万维网协议,只要客户端的软件和服务端的软件都支持这个协议,那么两边就可以进行沟通,因为双方可以通过协议理解对方的意思。
- http协议不具备安全机制,安全性很低。如果坏人截取到了你们传输的数据,也可以通过http协议解读你们的数据,如果你们传输了私密的消息,就暴露了。
- https协议是http协议的改进,同样的只要客户端的软件和服务器端的软件都支持这个协议,那么两边就可以沟通。不同的是沟通仅仅限于两者之间,就算坏人截取到了你们的数据,也无法通过https协议解读你们的数据,很安全。
- https协议如何做到安全性的呢,同样是通过https协议解读数据,为什么通信双方可以解读出正确的数据,而坏人就解读不了呢?
- https协议 --> http协议 + ssl协议,那么现在压力给到了ssl协议。
- 什么是ssl协议,我也没太看明白,总之就是在正式传输数据之前随机协商出一组只有客户端和服务端知道的密码,通过这个密码加密传输的数据。
- 那这个只有客户端和服务器知道的密码是怎么来的呢?坏人可是全程监听你们的通话的。这时进入我们的主题--什么是ssl证书。
- ssl证书需要部署在服务器上的,ssl证书通常不是免费的,需要从专业的机构购买。作用就是身份的认证和作为ssl协议的关键道具。
- 身份认证很好理解,证书是专业机构颁发的,机构在颁发证书时会验证申请证书的企业的真实性,他是不会给那些奇奇怪怪的网站颁发证书的,所以如果一个服务器上部署了ssl证书,那么我就可以比较放心的发送一些个人信息给服务器,比如买东西的时候的地址信息。
- 作为ssl协议的关键道具,其实理解起来也是比较容易的。ssl证书里面有很多信息,其中包括公钥和私钥。可以理解为钥匙和锁,钥匙只有一把,留在服务器,锁发送给客户端,客户端把密码用锁加密发给服务器,就算坏人复制了锁和用锁加密的密码也没用,因为解密需要钥匙,而钥匙全程都在服务器那里并没有出门,这样就获得了只有客户端和服务器知道的密码。
- 所以如果你的服务器有一个ssl证书,一定不要把它给泄露出去,那就相当于大家都有了钥匙。
- 为什么要协议出一组密码呢?直接用锁加密就行了呀!那样的话坏人确实解析不了客户端的数据,但是可以伪造客户端的数据。
- 客户端理解为浏览器就好了,不过据说传输层用tcp的协议都可以通过ssl协议进行安全处理。
0o0oo