美文网首页
iOS安全系列之HTTPS

iOS安全系列之HTTPS

作者: Leon_Jiang | 来源:发表于2018-08-01 17:20 被阅读0次

一、HTTPS:
1、对于未越狱的iOS设备来说,由于强大的沙箱和授权机制,以及Apple自己掌控的App Store, 基本上杜绝了恶意软件的入侵(非越狱)。但除系统安全之外,我们还是面临很多的安全问题:网络安全、数据安全等。
2、其实HTTPS与HTTP没什么区别,HTTPS就是将HTTP协议数据包放到SSL/TSL层加密后,在TCP/IP层组成IP数据包去传输,以此保证传输数据的安全。
二、SSL/TSL:(简单的来说,SSL/TSL通过四次握手,主要交换三个信息)
1、数字证书:该证书包含了公钥等信息,一般是由服务器发给客户端,接收方通过验证这个证书是不是由信赖的CA签发,或者与本地的证书相对比,来判断证书是否可信;假如需要双向验证,则服务器和客户端都需要发送数字证书给对方验证。
2、三个随机数:这三个随机数构成了后续通信过程中用来对数据进行对称加密解密的“对话密钥”。
首先客户端先发第一个随机数N1,然后服务器回了第二个随机数N2(这个过程同时把之前提到的证书发给客户端),这两个随机数都是明文的;而第三个随机数N3(这个随机数被称为Premaster secret),客户端用数字证书的公钥进行非对称加密,发给服务器;而服务器用只有自己知道的私钥来解密,获取第三个随机数。这样,服务端和客户端都有了三个随机数N1+N2+N3,然后两端就使用这三个随机数来生成“对话密钥”,在此之后的通信都是使用这个“对话密钥”来进行对称加密解密。因为这个过程中,服务端的私钥只用来解密第三个随机数,从来没有在网络中传输过,这样的话,只要私钥没有被泄露,那么数据就是安全的。
3、加密通信协议:就是双方商量使用哪一种加密方式,假如两者支持的加密方式不匹配,则无法进行通信;
有个常见的问题,关于随机数为什么要三个?只最后一个随机数N3不可以么?
这是由于SSL/TLS设计,就假设服务器不相信所有的客户端都能够提供完全随机数,假如某个客户端提供的随机数不随机的话,就大大增加了“对话密钥”被破解的风险,所以由三组随机数组成最后的随机数,保证了随机数的随机性,以此来保证每次生成的“对话密钥”安全性。
三、https的使用:
https://blog.csdn.net/syg90178aw/article/details/52839103

相关文章

  • 【加密解密】HTTPS

    学习文章 iOS9AdaptationTips 打造安全的App!iOS安全系列之 HTTPS 概念释疑 为了强制...

  • SSL/TLS 分析优秀文章

    SSL/TLS协议运行机制的概述 图解SSL/TLS协议 打造安全的App!iOS安全系列之 HTTPS iOS安...

  • iOS安全系列之HTTPS

    一、HTTPS:1、对于未越狱的iOS设备来说,由于强大的沙箱和授权机制,以及Apple自己掌控的App Stor...

  • iOS安全系列之 HTTPS

    本文参考链接:JaminHTTPS信任证书的三种方法 在2016年底, Apple要求所有App适配App Tra...

  • iOS网络安全

    HTTPS Server Trust Evaluation iOS安全系列之一:HTTPS

  • iOS安全系列之二:HTTPS进阶

    上一篇《iOS安全系列之一:HTTPS》被CocoaChina转载,还顺便上了下头条: 打造安全的App!iOS安...

  • 打造安全的App!iOS安全系列之 HTTPS

    作者:Jaminzzhang 如何打造一个安全的App?这是每一个移动开发者必须面对的问题。在移动App开发领域,...

  • iOS-AFN

    博文参考iOS开发之网络层探索iOS安全策略之HTTPS Github Demo AFN头文件信息

  • iOS 网络之 HTTPS安全

    HTTPS 认证流程image 1. 客户端发起HTTPS请求这个没什么好说的,就是用户在浏览器里输入一个http...

  • iOS应用安全之代码混淆

    iOS应用安全之代码混淆iOS应用安全之代码混淆

网友评论

      本文标题:iOS安全系列之HTTPS

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