由于ios9之后强制的https请求,原来的http请求所占的市场比率也越来越小。在网上查了几十篇类似的https请求的文章,诸如此类的问题很多,但是回答者含糊其辞, 都不尽如人意,经过几天的探索,写下这篇文章,希望可以帮到有这方便需求的开发者。
首先,需要知道什么是https,以此共勉。
1.HTTPS和HTTP的区别
https协议需要到CA申请证书,一般免费证书很少,需要交费。
http是超文本传输协议,信息是明文传输,https则是具有安全性的SSL加密传输协议。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
2.非对称加密算法
这种加密或许理解起来比较困难,这种加密指的是可以生成公钥和私钥。凡是公钥加密的数据,公钥自身不能解密,而需要私钥才能解密;凡是私钥加密的数据,私钥不能解密,需要公钥才能解密。这种算法事实上有很多,常用的是RSA,其基于的数学原理是两个大素数的乘积很容易算,而拿到这个乘积去算出是哪两个素数相乘就很复杂了,具体原理有兴趣可以自行研究。
由于ios9之后强制的https请求,原来的http请求所占的市场比率也越来越小。在网