最早接触HTTPS是在大学讲堂里面接触到,老师几乎就是一句话带过,HTTP+SSL就是HTTPS,很安全,有兴趣看看课本和网上查查资料
而重视起来的时候完全是因为工作的时候需要,苹果在16年的时候放重话了说17年1月1日必须完全适配HTTPS
后来是看了阮一峰的文章已经写的非常好了,详细,基础,明解。
后来公司举办了一次技术沙龙,讨论了关于HTTPS非常久,但是,在面的提问环节,有些人问的问题也实在是不应该,如果理解它的原理是不会问那种问题的。
我们可以看看这两部分:
对称加密和非对称加密算法:
http://www.cnblogs.com/jfzhu/p/4020928.html
注意这里:
然后可以看到很经典的一个HTTPS原理流程图:
便可以明白,其实HTTPS的原理实质上是用了巧妙组合非对称算法和对称算法的而已
利用非对称算法生成一对钥匙,一个公钥和一个私钥,在数字证书的护航下将公钥送达用户,用户拿到这个公钥对自己后面需要对内容解密的对称算法的私钥进行加密,回传给服务端,服务端拿自己的公钥解密之后,拿到用户生成的一个私钥对内容加密,再进行传达到用户手中,这样就能保证一个流程上的相对严谨。
当然了HTTPS还是有有机可乘的地方的,例如中间人攻击等,有兴趣自己可以了解一下呗,其实我们用Charles抓包工具对iOS机器的监听,就是用到这个原理。