很多人打开一些网站的时候,有的网站是开头是https://,有人就会存在这样的疑惑就是,这个多个S有什么不同? 其实https是http的安全版,下面我们就简单说下HTTPS:
HTTPS协议
HTTPS是一种在HTTP的基础上加了SSL/TLS层(安全套接层)的安全的超文本传输协议,会对传输的内容进行安全加密, 会比http协议更安全,默认使用443端口。
HTTPS作为一种安全的应用层协议,使用了以下三种加密手段:
数据正文数据量较大,适用于对称加密,因为对称加密速度快,适用于大量数据加密,但是安全级别低,密钥在网络中传输的过程中容易被窃取,所以对这个密钥进行非对称加密。最后由于非对称加密的公钥在网络中传输,保证接收方接收到正确的公钥,使用证书验证。
1、对称密钥加密
近代的加密算法都是公开的,而密钥是保密的,加密和解密都需要密钥,一方通过密钥和算法将明文加密成密文,而另一方通过密钥和算法进行解密,这种加密和解密使用同一个密钥,称为对称密钥加密。
然而在进行通信之前,需要通信的双方持有同一份密钥,但是如何将密钥传输给对方,如果密钥被截获,那么使用密文传输就没有意义了。如果能保证密钥安全的传输到另一方,那么信息也能安全的传输到另一方。使用对称密钥加密就存在问题了。

2、非对称加密
非对称加密,两把密钥公钥和私钥,私钥自己保存,公钥用于公开,加密和解密密钥不同。可以用公钥和私钥中任何一个进行加密,另一个解密。服务端可以创建一对密钥,分别为私钥和公钥,公钥是公开的,使用公钥加密的数据,只有使用私钥才能解密,而通过公钥推导出私钥,现代技术很难成功。
服务器首先将公钥传输给客户端,客户端得到公钥后,将要传输的信息使用公钥加密,密文传输个服务端,只有持有对应的私钥的服务端才能解密这一段数据。即使密文和公钥已知,也很难获得原来的信息。
为了表明信息没有收到伪造,确实是信息拥有者发出。可以使用数字签名。持有私钥的一方可以将信息加密,而加密后的密文可以使用公钥解密。由于私钥是私有的,能够别公钥解密的数据只有持有私用的一方可以发布,别人无法伪造。dexunyun用自己的私钥对消息加密作为签名,再与消息一起发送,接收者用dexunyun公钥验签。窃听者窃取冒充dex;unyun的签名篡改内容也没用,因为内容发生改变时,对应的签名也要重新计算,签名的生成必须使用私钥,只要私钥不泄露,签名就不会被冒充。