ios-https浅析

采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面,一般都是向CA申请,然后CA会给你公钥和私钥,公钥和私钥是有关系的。

HTTP与HTTPS的端口不同,一个是80端口,一个是443端口;

HTTPS其实可以理解成HTTP+SSL或者HTTP+TLS

其实SSL和TLS可以视为同一个东西的不同阶段

SSL是“Secure Sockets Layer”的缩写,中文叫做“安全套接层”,到了1999年,SSL因为应用广泛,已经成为互联网上的事实标准,IETF就在那年把SSL标准化,标准化之后的名称改为TLS(是“Transport Layer Security”的缩写),中文叫做“传输层安全协议”。

SSL协议和TLS协议介于应用层和传输层之间

如果服务器支持https的话,客户端和服务器通信的大致步骤应该是这样子的

首先,客户端先向服务器发送请求去进行握手连接获取公钥,然后服务器把公钥给客户端

这个时候客户端拿到公钥的时候会生成一个随机数也就是我们对称加密算法中使用的密钥。

然后我们再用公钥对这个生成的随机的密钥进行加密发送给服务器,然后服务器再用私钥进行解密

然后服务器告诉客户端它收到了,然后客户端就可以向服务器发生数据了,用密钥进行加密

然后服务器发送响应传输的数据也要用密钥进行加密。然后客户端再用密钥进行解密。

当连接断开之后再进行连接获取的密钥都是不一样的。

其实我们在第一次去发送https请求要去获取数据的时候需要去安装证书,这个证书其实就是公钥。认证过的https的证书是自动安装的,所以我们可以不用自己去手动安装。没有认证过的就需要我们自己去手动的安装。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值