Mic*_*las 7 java cryptography bouncycastle
在新版本的Bouncy Castle库中有一些变化PKCS10CertificationRequest.在以前的版本中,可以PublicKey使用getPublicKey()方法获得此类请求(请参阅旧文档).
现在这种方法消失了.如何通过此类请求获取PublicKey?有,getSubjectPublicKeyInfo().parsePublicKey()但它返回ASN1Primitive.
我从SPKAC看到NetscapeCertRequest我仍然可以通过调用直接读取PublicKey getPublicKey().
Jam*_*olk 11
主提供程序包中有一个名为PublicKeyFactory的实用程序类.createKey方法返回一个AsymmetricKeyParameter,您可以将其转换为适当的任何类型的公钥,例如
SubjectPublicKeyInfo pkInfo = pkcs10CertReq.getSubjectPublicKeyInfo();
RSAKeyParameters rsa = (RSAKeyParameters) PublicKeyFactory.createKey(pkInfo);
Run Code Online (Sandbox Code Playgroud)
编辑1:
此外,还需要创建java.security.PublicKey更多步骤:
RSAPublicKeySpec rsaSpec = new RSAPublicKeySpec(rsa.getModulus(), rsa.getExponent());
KeyFactory kf = KeyFactory.getInstance("RSA");
PublicKey rsaPub = kf.generatePublic(rsaSpec);
Run Code Online (Sandbox Code Playgroud)
我正在研究同样的问题,这也会起作用(我们不需要指定算法的优势):
SubjectPublicKeyInfo pkInfo = pkcs10CertReq.getSubjectPublicKeyInfo();
JcaPEMKeyConverter converter = new JcaPEMKeyConverter();
PublicKey pubKey = converter.getPublicKey(pkInfo);
Run Code Online (Sandbox Code Playgroud)
请参阅org.bouncycastle.openssl.jcajce.JcaPEMKeyConverter
| 归档时间: |
|
| 查看次数: |
7152 次 |
| 最近记录: |