Charles 原理及使用

本文详细介绍了Charles的原理,包括其如何拦截并解密HTTPS请求。同时,逐步指导如何下载并安装SSL证书,以及配置Charles进行HTTP代理。此外,还展示了如何利用Charles进行断点调试和本地文件映射,以方便接口测试和数据修改。
摘要由CSDN通过智能技术生成

一、charles的原理

1.1:Charles的原理

1.客户端向服务器发起HTTPS请求
2.Charles拦截客户端的请求,伪装成客户端向服务器进行请求
3.服务器向“客户端”(实际上是Charles)返回服务器的CA证书
4.Charles拦截服务器的响应,获取服务器证书公钥,然后自己制作一张证书,将服务器证书替换后发送给客户端。
5.客户端接收到“服务器”(实际上是Charles)的证书后,生成一个对称密钥,用Charles的公钥加密,发送给“服务器”(Charles)
6.Charles拦截客户端的响应,用自己的私钥解密对称密钥(Charles拿到了对称密钥**)**,然后用服务器证书公钥加密,发送给服务器。
7.服务器用自己的私钥解密对称密钥,向“客户端”(Charles)发送响应
8.Charles拦截服务器的响应,替换成自己的证书后发送给客户端
9.至此,连接建立,Charles拿到了 服务器证书的公钥 和 客户端与服务器协商的对称密钥,之后就可以解密或者修改加密的报文了

二、charles的证书下载(web)

2.1.1:为什么下载charles的ssl证书

默认情况下,charles不能解析https协议的接口,里面的请求和响应数据都是乱码格式,所以我们需要下载ssl证书,来获取里面的数据

2.2.1:点击help,选中ssl Proxying ,点击Install Charles Root Certificate

2.2.2:点击”安装证书”按钮

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Charles是一款用于网络调试和分析的工具,它可以拦截和查看应用程序与服务器之间的网络通信。它的工作原理如下: 1. 代理服务器Charles作为一个代理服务器,它在应用程序和服务器之间充当中间人的角色。当应用程序发送请求时,请求会先经过Charles,然后再由Charles将请求发送给服务器。 2. SSL证书:为了能够查看HTTPS通信,Charles会生成一个自签名的SSL证书,并将其安装到设备上。这样,当应用程序与服务器进行HTTPS通信时,Charles可以解密和查看通信内容。 3. 拦截和记录:Charles可以拦截应用程序发送的请求和服务器返回的响应,并将其记录下来。这样可以方便开发人员查看和分析网络通信的细节,包括请求头、响应头、请求体、响应体等信息。 4. 修改和重发:除了拦截和记录,Charles还可以修改请求和响应。开发人员可以在Charles中修改请求头、请求体、响应头、响应体等内容,并将修改后的请求或响应重新发送给服务器或应用程序。 5. 过滤和断点:Charles提供了过滤和断点功能,可以根据条件过滤出特定的请求或响应,并在特定的请求或响应上设置断点,以便于调试和分析。 6. 映射和重写:Charles还支持映射和重写功能,可以将特定的请求或响应映射到其他的URL,并可以对请求或响应进行重写,以便于模拟不同的场景和测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值