相关疑难解决方法(0)

无法安装 SSL pem 证书 android 10

我正在尝试安装自签名证书(使用自制 CA 证书签名)。我设法成功安装了 CA 证书。但是当我尝试安装用户证书时,出现以下错误:“安装证书需要私钥。” 我尝试安装的证书是 pem 证书,是使用 OpenSSL 生成的,在我的 Windows 系统上没有任何问题。

-----BEGIN CERTIFICATE-----
MIIEBzCCAm+gAwIBAgIRANYwbUh/QDsEm5Fc6h1epIEwDQYJKoZIhvcNAQELBQAw
................................................................
60Gv8K2bhDNaEp3cWKFt0f0FBGo2Md79lyJWMDviuGLDI0OmPgkGT4e+LesGAvAp
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)

ssl android certificate pem

8
推荐指数
1
解决办法
4925
查看次数

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

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

我已经创建了自己的 CA + 密钥,为localhost和创建了证书192.168.178.23,并在 OSX 上安装了 CA。这一切都按预期工作 - 如果我将本地计算机上的浏览器指向 和 ,则一切都是绿色localhost192.168.178.23:3000。我遵循了这个指南

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

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

我按照这篇文章将其转换为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........................................................... …
Run Code Online (Sandbox Code Playgroud)

ssl android certificate-authority

8
推荐指数
0
解决办法
2052
查看次数

一张自签名证书可以统治所有这些?Chrome,Android和iOS

另一个自签名证书问题,但是我已经尝试了几天,以找到创建自签名证书的最佳/正确方法,该方法将在我的开发环境中适用于最新版本的Chrome,Android和iOS。

对于这些平台中的至少一个,我在这里和其他地方找到的说明已经过时了。

这是我找到的最好的,但仅适用于Chrome和Android。

openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 -subj "/C=US/ST=Oklahoma/L=Stillwater/O=My Company/OU=Engineering" -keyout ca.key -out ca.crt
openssl genrsa -out "test.key" 2048
openssl req -new -key test.key -out test.csr -config openssl.cnf
openssl x509 -req -days 3650 -in test.csr -CA ca.crt -CAkey ca.key -CAcreateserial -extensions v3_req -extfile openssl.cnf -out test.crt
openssl x509 -inform PEM -outform DER -in test.crt -out test.der.crt
Run Code Online (Sandbox Code Playgroud)

openssl.cnf的内容:

[req]
default_bits = 2048
encrypt_key  = no # Change to encrypt the private key using des3 or similar …
Run Code Online (Sandbox Code Playgroud)

android openssl google-chrome certificate ios

3
推荐指数
1
解决办法
379
查看次数