标签: pkcs#12

PKCS#12:DerInputStream.getLength()异常

我使用keytool命令生成证书:

keytool -genkeypair -alias myRSAKey -keyalg RSA -keysize 1024 -keystore test.p12 -storepass test -storetype pkcs12
Run Code Online (Sandbox Code Playgroud)

然后,如果我尝试使用java安全API加载它,在将文件作为byte []获取后:

KeyStore ks = KeyStore.getInstance("PKCS12");
try{
   ks.load(new ByteArrayInputStream(data), "test".toCharArray())
} catch (Exception e){
   ...
}
Run Code Online (Sandbox Code Playgroud)

我得到一个DerInputStream.getLength():lengthTag = 127,太大的异常.

怎么了?

java security certificate pkcs#12

17
推荐指数
4
解决办法
5万
查看次数

如何使用keytool将证书创建到PKCS12密钥库?

我想用keytool程序将证书创建为PKCS12密钥库格式.

密钥库有扩展名.pfx.

我该如何实现这一目标?

certificate keytool ssl-certificate pkcs#12

17
推荐指数
1
解决办法
5万
查看次数

需要帮助将P12证书转换为JKS

我需要一些帮助将我的.P12证书文件转换为JKS密钥库.我使用Java的keytool实用程序遵循标准命令.但是,当我尝试使用生成的JKS文件通过SOAPUI访问WS端点时,我收到403.7错误 - 禁止访问:需要SSL证书.对同一端点使用带有SOAPUI的P12文件会产生成功的响应.以下是将P12密钥库导入JKS密钥库的标准命令 -

keytool -importkeystore -srckeystore src.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore target.jks
Run Code Online (Sandbox Code Playgroud)

我也尝试用openssl转换P12 - > PEM - > DER - > JKS:

openssl pkcs12 -in src.p12 -out src.pem -clcerts
Run Code Online (Sandbox Code Playgroud)

(将src.pem编辑成两个名为src.key和src.cer的复合部分)

openssl pkcs8 -topk8 -nocrypt -in src.key -out key.der -inform PEM -outform DER
openssl x509 -in src.cer -inform PEM -out cert.der -outform DER
Run Code Online (Sandbox Code Playgroud)

(我运行了一个实用程序,将两个键组合成keystore.ImportKey)

keytool -importkeystore -srckeystore keystore.ImportKey -destkeystore target.JKS
Run Code Online (Sandbox Code Playgroud)

而且同样没有骰子.

有什么我想念的吗?

security ssl openssl jks pkcs#12

17
推荐指数
3
解决办法
3万
查看次数

将中间证书添加到pkcs12文件

我有一个具有以下认证链的证书:Entrust->我的CA->我的发行CA->我的JBoss证书.现在,如果我在JBoss实例上安装我的证书,那么我在此实例上运行的任何页面都将显示为不可信,因为我的浏览器无法识别我的颁发CA. 我知道我的计算机拥有Entrust签名权限的公钥.如何安装我的证书,以便任何浏览器都可以看到整个证书链?

我制作了一个单独的.pem文件,其中包含所有可以使用的证书.它没.谁能解释我做错了什么,或者即使这是可能的?

openssl ssl-certificate pkcs#12 jboss6.x

17
推荐指数
1
解决办法
5万
查看次数

既然在Android上不推荐使用SSLSocketFactory,那么处理客户端证书身份验证的最佳方法是什么?

我正在开发一款需要客户端证书身份验证(包含PKCS 12文件)的Android应用.随着所有这些的弃用apache.http.*,我们已经开始在我们的网络层上进行重构,我们决定使用OkHttp作为替代品,到目前为止我非常喜欢它.

但是,我没有找到任何其他方法来处理客户端证书auth而不使用SSLSocketFactoryOkHttp或其他任何事情.那么在这种特殊情况下,最好的做法是什么?OkHttp有另一种方法来处理这种身份验证吗?

ssl android pkcs#12 sslsocketfactory okhttp

17
推荐指数
2
解决办法
2万
查看次数

QSslCertificate :: importPkcs12无法解析PFX文件

我正在尝试在我的Qt应用程序中解压缩我的pkcs12文件 - 但没有运气.我正在构建一个Qt控制台应用程序(禁用GUI).

(我遵循了这个指南:https://github.com/trueos/sysadm-ui-qt/blob/master/src-qt5/gui_client/SSLNotes.txt)

Pkcs12创建命令:

"openssl req -newkey rsa:2048 -nodes -keyout test_key.pem"
"openssl req -key test_key -new -x509 -out test_crt.crt"
"openssl pkcs12 -inkey test_key.pem -in test_crt.crt -export -passout stdin -out new.pfx"
Run Code Online (Sandbox Code Playgroud)

Qt代码:

QString password="1234";
QFile pkcs("/Users/test/Desktop/certs/new.pfx");
pkcs.open(QFile::ReadOnly);
QSslKey key;
QSslCertificate cert;
QList<QSslCertificate> imported_certs;
static bool import=QSslCertificate::importPkcs12(&pkcs,&key,&cert,&imported_certs,QByteArray::fromStdString(password.toStdString()));

pkcs.close();
qDebug()<<import;
Run Code Online (Sandbox Code Playgroud)

手动提取密钥和文件已使用openssl命令.

错误信息:

"Unimplemented Code."
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

sockets ssl qt openssl pkcs#12

17
推荐指数
1
解决办法
977
查看次数

使用或不使用OpenSSL将SSL .pem转换为.p12

我得到.pem需要转换为.p12文件的外部文件- 我在这个过程中添加了用户名和密码.(我需要这样做才能使用第三方API.)

使用openssl,命令是......

openssl pkcs12 -export -in xxxx.pem -inkey xxxx.pem -out xxx.p12 -passout pas:newpassword -name "newname"
Run Code Online (Sandbox Code Playgroud)

我可以从终端会话运行它,它完美地工作.

但是,我需要经常这样做并编写一个Java类来处理这个和更多(我的应用程序主要是.jspTomcat和Apache).当我尝试从Java运行相同的命令时Runtime.exec,我得到了可怕的"无法写入'随机状态'"错误(使用OpenSSL"无法写入'随机状态'"是什么意思?).

我假设不同的是,当我从Java运行时,用户不是"root".

那么,有没有更好的方法使用Java库从pem转换为.p12而不是执行命令行程序(即openssl)?

否则,我想我需要在我的服务器上进行一些配置.我.md在服务器上的任何地方都找不到任何文件.唯一的openssl.cnf文件位于一个奇怪的目录(/etc/pki/tls)中.我是否需要在openssl.cnf其他地方创建新文件?

java openssl pkcs#12 pem

16
推荐指数
2
解决办法
5万
查看次数

Openssl转换.PEM仅包含.PKCS12的RSA私钥

目前我有一个仅包含私钥的.PEM文件.我需要将此文件转换为.PKCS12文件.目前我正在尝试使用openssl来实现这一点,而且我遇到了一些问题.

我正在使用的.PEM文件格式如下:

-----BEGIN RSA PRIVATE KEY-----

Some key

-----END RSA PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)

我使用以下Openssl命令尝试将此.PEM文件转换为.PKCS12:

openssl pkcs12 -export -inkey file.pem -out file.p12
Run Code Online (Sandbox Code Playgroud)

然后控制台挂起消息:

Loading 'screen' into random state -done
Run Code Online (Sandbox Code Playgroud)

我做错了什么?

任何帮助都会得到满足.

openssl rsa pkcs#12 pem

16
推荐指数
2
解决办法
3万
查看次数

OAuth PKCS p12私钥的Google API密码是什么?

Google API设置提供了一种使用服务帐户创建项目的方法.

我下载私钥作为PKCS#12 p12文件.

我在哪里可以找到此文件的密码?

api passwords pkcs#12

16
推荐指数
1
解决办法
1万
查看次数

在控制台macos中安装.p12或.cer

我尝试安装.p12证书到我的macos使用命令行.

我可以安装.cer

sudo certtool I Certificates.p12 d
Run Code Online (Sandbox Code Playgroud)

但它不适用于未生成此证书的计算机.我认为我应该使用.p12但是如何安装.p12?

我试过用

security add-certificates "/Users/$NAME/Library/Keychains/login.keychain" "$CERT_PATH"
Run Code Online (Sandbox Code Playgroud)

但结果与之前的命令相同.无法安装.p12

请帮忙.

谢谢,

macos shell ssl certificate pkcs#12

14
推荐指数
2
解决办法
2万
查看次数