最近在Andorid测试https, 需要安装个人证书
Settings -> Security -> Install from SD card
发现文件是灰的,不能选。有文章说是4.4的安全限制,不支持从external sdcard上安装。尝试设置PIN登录再安装依然失败。
最后在github上找到解决方案.
https://github.com/mitmproxy/mitmproxy/issues/204
1. 直接利用openssl生成cert文件
此步可在Linux上完成,没有openssl的运行 yum install openssl-libs(没有验证)# filename=`openssl x509 -in <you_cer_file> -hash -noout`
# openssl x509 -in
<your_cer_file> >> $filename.0
# openssl x509 -in <your_cer_file> -text -fingerprint -noout >> $filename.0
# ls
e97664f4.0
2. 将生成的文件push到设备
a) 生成系统证书
adb shell mount -o remount,rw /system
adb push $filename.0 /system/etc/security/cacerts
如果adb装在Windows上先将$filename.0 copy下来
或
b) 生成用户级证书
adb shell mkdir /data/misc/keychain/cacerts-added
adb push
$filename.0 /data/misc/keychain/cacerts-added
3. Settings -> Security -> Trusted credentials 检查证书已经装好了