美文网首页
iOS开发进阶- HTTPS与网络安全

iOS开发进阶- HTTPS与网络安全

作者: 繁华落尽丶lee | 来源:发表于2018-09-06 09:21 被阅读205次

    课程: 新浪微博资深大牛全方位剖析 iOS 高级面试

    一、HTTPS和网络安全问题

    HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

    HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

    HTTPS和HTTP有怎样的区别?

    HTTPS = HTTP + SSL/TLS
    1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
    2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
    3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
    4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

    HTTPS连接建立流程是怎样的?

    1. 客户端发送报文,包含TLS版本号,加密算法,随机数C
    2. 服务端发送加密算法、随机数S,和证书
    3. 客户端验证服务器证书
    4. 客户端组装会话秘钥
    5. 客户端发送报文,服务器端的公钥对预主秘钥进行加密传输
    6. 服务端通过私钥解密得到预主秘钥
    7. 服务端组装会话秘钥
    8. 客户端发送加密握手消息
    9. 服务器端发送加密握手消息

    会话秘钥: 随机数S + 随机数C + 预主秘钥

    HTTPS都使用了哪些加密算法?

    1. 连接建立过程使用非对称加密,非对称加密很耗时。
    2. 后续通信使用了对称加密。

    非对称加密

    非对称加密算法是一种密钥的保密方法。 非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。 公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。 ——《百度百科》

    对称加密

    采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。 ——《百度百科》

    参考文章

    详细解析 HTTP 与 HTTPS 的区别

    相关文章

      网友评论

          本文标题:iOS开发进阶- HTTPS与网络安全

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