• Charles将证书设置为根证书


    1.  下载证书:

    在mac浏览器上下载: 

    http://chls.pro/ssl

    在Download目录上得到:charles-proxy-ssl-proxying-certificate.pem文件

    2. 尝试执行:

    openssl -subject_hash_old -in charles-proxy-ssl-proxying-certificate.pem |head -1

    报错:openssl:Error: '-subject_hash_old' is an invalid command.

    再尝试执行:

    openssl x509 -in charles-proxy-ssl-proxying-certificate.pem -noout -subject_hash

    得到:e7c27ccd

     如果需要将pem转cer:

    openssl x509 -inform pem -in ../charles-proxy-ssl-proxying-certificate.pem -outform der -out xxxx.cer

    3. 将文件push到根证书路径:

    用户证书路径:/data/misc/user/0/cacerts-added

    根证书路径: /etc/security/cacerts/

    先查一下根证书路径下是否存在e7c27ccd开头的文件:

    ls /etc/security/cacerts/ | grep e7c27ccd

    如果新证书文件名为 存在的序号那么就是最大序号+1。一般情况下直接加.0

    执行命令:

    adb push charles-proxy-ssl-proxying-certificate.pem /etc/security/cacerts/e7c27ccd.0

    报错:

    charles-proxy-ssl-proxying-certificate.pem: 1 file pushed, 0 skipped. 0.7 MB/s (1885 bytes in 0.002s)
    adb: error: failed to copy 'charles-proxy-ssl-proxying-certificate.pem' to '/etc/security/cacerts/e7c27ccd.0': remote couldn't create file: Permission denied

    尝试执行:

    # 再Mac机的控制台:
    adb push charles-proxy-ssl-proxying-certificate.pem /sdcard/
    # 在手机shell的控制台:
    mount -o remount,rw /system
    mv /sdcard/charles-proxy-ssl-proxying-certificate.pem /etc/security/cacerts/e7c27ccd.0
    mount -o remount,ro /system

    在手机上查看是否安装成功:

    设置/搜索/(键入“凭据”)/ 点击信任的凭证

     滑最下面,可以看到XK开头的证书, 就说明成功了。 

  • 相关阅读:
    C++ unordered_set运用实例
    C++ Multimap运用实例—查找元素
    C++ Multimap运用实例
    C++ Map运用实例
    C++ Set运用实例
    C++ list运用实例
    C++ vector使用实例
    c++ Array运用实例
    C++ int double float对应的长度以及二进制
    引用和指针有什么区别
  • 原文地址:https://www.cnblogs.com/dzqdzq/p/15033814.html
Copyright © 2020-2023  润新知