微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将我自己的证书颁发机构添加到我的 Android 设备?

如何解决如何将我自己的证书颁发机构添加到我的 Android 设备?

我想从同一网络上的 Android 设备访问在本地计算机上运行的 https 站点。 Service Worker 和推送通知意味着我需要使用 https。

我创建了自己的 CA + 密钥,为 localhost192.168.178.23 创建了证书,并在 OSX 上安装了 CA。这一切都按预期工作 - 如果我将本地计算机上的浏览器指向 localhost192.168.178.23:3000,一切都是绿色的。我关注了this guide

现在我想对我的 Android 设备执行相同的操作,以便我可以通过网络访问本地开发站点

我将 myCA.crt 放在我的设备上并点击它,但它显示“安装证书需要私钥”。当我将设置导航到 Install a certificate -> CA certificate 时,也会发生同样的情况。

我按照 this post 将其转换为 p12 文件,其中包含密钥和证书。 (我不确定为什么 Android 需要这里的密钥)。我的命令是 openssl pkcs12 -export -in myCA.crt -inkey myCA.key -out test-combined.p12

现在我将我的 p12 文件移动到我的设备并点击它。它提示输入密码,并识别出它有一个密钥,但它不会让我将证书作为证书颁发机构 - 仅作为“VPN 和应用程序用户证书”或“Wifi 证书”。当我尝试通过设置安装证书时,它允许我使用密码解锁文件,但随后显示“此文件不能用作 CA 证书”。

myCA.key

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,A868E9FC78768599

axC3F...........................................................
.............stuff..............................................
...........................................................QBkMn
-----END RSA PRIVATE KEY-----

myCA.crt

-----BEGIN CERTIFICATE-----
MIIC9DCCAdwCCQDIK...............................................
......................... stuff ................................
................................................oLBZA==
-----END CERTIFICATE-----

我是这个东西的新手。我错过了什么?这是 Android 11。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。