美文网首页
IOS开发_http和https

IOS开发_http和https

作者: 一杯开水 | 来源:发表于2019-11-02 20:22 被阅读0次

    1. HTTP;

    2. HTTPS;


    1. HTTP;

            1.1 HTTP的概念:

                ① HTTP超文本传输协议(HyperText Transfer Protocol)是一个简单的请求-响应协议,它通常基于TCP的应用层协议;

                ② HTTP协议指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应;

                ③ 请求和响应消息的头以ASCII码形式给出、而消息内容则具有一个类似MIME(数据格式)的格式。

            1.2 HTTP网络请求方式:

                ① GET:获取资源;

                ② POST:传输实体主体;

                ③ PUT:传输文件;

                ④ HEAD:获得报文首部(请求头和响应头);

                ⑤ DELETE:删除文件。    

            1.3 工作原理:

             HTTP是基于客户/服务器模式,且面向连接的。典型的HTTP事务处理流程: 

    HTTP通讯实例

                ① 客户与服务器建立连接;

                ② 客户向服务器提出请求;

                ③ 服务器接受请求,并根据请求返回相应的文件作为应答;

                ④ 客户与服务器关闭连接;

                ⑤ TCP三次握手和服务器建立连接,四次挥手释放连接。

    三次握手 四次挥手

            1.4 HTTP协议的特点:

                ① 客户端与服务器之间的HTTP连接是一种一次性连接,它限制每次连接只处理一个请求,当服务器返回本次请求的应答后便立即关闭连接,下次请求再重新建立连接。

                ② HTTP是一种无状态协议,即服务器不保留与客户交易时的任何状态。这就大大减轻了服务器记忆负担,从而保持较快的响应速度。

                ③ 基于TCP协议,HTTP协议的目的是规定客户端和服务端数据传输的格式和数据交互行为,并不负责数据传输的细节。底层是基于TCP实现的。现在使用的版本当中是默认持久连接的,也就是多次HTTP请求使用一个TCP连接。

    2. HTTPS;

            2.1 HTTPS概念:

               ① HTTPS 安全超文本传输协议(全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL(Secure Sockets Layer 安全套接层)层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 

                ② 绝大多数HTTPS协议等价于HTTP协议+SSL协议;

            2.2 工作原理:

                ① 服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主秘钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密码加密后传给服务器;4)服务器回复该主密钥,并返回给客户一个用主秘钥认证的信息,以此让客户认证服务器;

                ② 用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证;

                ③ 数据传输。

            2.3 协议特点:

                机密性:SSL协议使用密钥加密通信数据。

                可靠性:服务器和客户都会被认证,客户的认证是可选的。

                完整性:SSL协议会对传送的数据进行完整性检查。

    相关文章

      网友评论

          本文标题:IOS开发_http和https

          本文链接:https://www.haomeiwen.com/subject/avuhbctx.html