温馨提示  2024年 6月我们已经停止开发者板块文章内容更新,谢谢来访。存档数据
知识 2023-11-02 25 次阅读

苹果证书可信度存疑,Fiddler如何解决使用疑问?

好的,这是一篇关于苹果证书不可信和Fiddler的应用文:
苹果证书不可信,Fiddler来帮忙
在开发过程中,我们常常需要使用各种证书来验证网络请求的安全性。可是,有时候我们会遇到苹果证书不可信的问题,从而导致网络请求无法正常进行。这时,我们可使用Fiddler来解决问题。Fiddler是一个强大的网络调试工具,它可以捕获所有网络请求,并提供详细的请求信息,帮助我们分析问题所在。通过查看请求中的证书信息,我们可确认证书有没有效,最终解决苹果证书不可信的问题。使用Fiddler,我们可轻松地调试网络请求,提高开发效率。

在进行 iOS 应用的开发或测试时,我们可能需要使用到 Fiddler 工具进行抓包分析。可是,在使用 Fiddler 进行抓包时,有可能出现“苹果证书不可信”的提示,从而导致无法正常抓包。这样的话,这个问题是什么原因造成的呢?下面就来详细介绍一下。

1. iOS 系统的安全机制

首先,我们需要了解一下 iOS 系统的安全机制。iOS 系统中有一个叫做“证书链”的概念,它用于验证应用程序与服务器之间的安全连接。证书链包括了服务器的证书和中间证书颁发机构的证书,最终验证服务器证书的有效性。

对于 HTTPS 请求,如果服务器的证书与设备中的证书不匹配,iOS 系统会拒绝连接,并提示“证书不可信”的错误信息。这是因为 iOS 系统会对证书进行严格的验证,确保连接的安全性。

2. Fiddler 的工作原理

下一步,我们需要了解一下 Fiddler 的工作原理。Fiddler 是一个代理工具,它通过在本地建立一个代理服务器,将设备与服务器之间的通信流量通过代理服务器中转,最终实现抓包分析的功能。

当我们在 iOS 设备上访问一个 HTTPS 网站时,设备会向服务器发送一个证书请求,服务器会将证书发送回设备。可是,由于我们使用了 Fiddler 代理,所以证书请求会被 Fiddler 截获,并且 Fiddler 会向设备发送一个自己生成的证书,而不是服务器的证书。这个自己生成的证书并没有被苹果认证,因此就会导致“苹果证书不可信”的提示。

3. 解决方法

专为“苹果证书不可信”的问题,我们可使用以下两种解决方法

方法一信任 Fiddler 的证书

我们可在 iOS 设备上添加 Fiddler 的证书,使其得到信任,最终防止“证书不可信”的提示。具体步骤如下

1. 在 Fiddler 中,选择“Tools”->“Options”->“HTTPS”,勾选“Decrypt HTTPS traffic”,并点击“Actions”->“Export Root Certificate to Desktop”,将证书保存到桌面上。

2. 将证书发送到 iOS 设备上,可以借助邮件、AirDrop 等方法。

3. 在 iOS 设备上,打开邮件或 AirDrop 中的证书文件,并选择“安装证书”。

4. 在安装证书时,需要输入设备的密码。

5. 安装成功后,打开“设置”->“通用”->“关于本机”->“证书信任设置”,找到 Fiddler 的证书,并把它开关打开。

方法二使用 Fiddler 的 HTTPS 解密功能

除了信任 Fiddler 的证书外,我们还可以使用 Fiddler 的 HTTPS 解密功能,防止“证书不可信”的提示。具体步骤如下

1. 在 Fiddler 中,选择“Tools”->“Options”->“HTTPS”,勾选“Decrypt HTTPS traffic”。

2. 在 iOS 设备上,打开“设置”->“无线局域网”->“HTTP 代理”,将代理设置为 Fiddler 的 IP 地址和端口号。

3. 在 iOS 设备上,访问 HTTPS 网站时,会弹出一个提示框,询问是否信任 Fiddler 的证书。选择“信任”即可。

通过以上两种方法,我们就可以解决“苹果证书不可信”的问题,正常使用 Fiddler 进行抓包分析了。