如何从EC公钥字节中获取PublicKey对象?

如何从EC公钥字节中获取PublicKey对象?,第1张

如何从EC公钥字节中获取PublicKey对象?

椭圆曲线键对Generation和键工厂上的Bouncy
Castle示例代码使
我非常接近。

一旦我成功创建了ECDSA密钥工厂和

secp256r1
/
NIST P-256
/
P-256
/
prime256v1
曲线的曲线规范,便可以
ECPointUtil.deprePoint
用来获取曲线点。然后,我可以生成一个公共密钥规范,该规范使我能够生成这样的公共密钥:

private PublicKey getPublicKeyFromBytes(byte[] pubKey) throws NoSuchAlgorithmException, InvalidKeySpecException {    ECNamedCurveParameterSpec spec = ECNamedCurveTable.getParameterSpec("prime256v1");    KeyFactory kf = KeyFactory.getInstance("ECDSA", new BouncyCastleProvider());    ECNamedCurveSpec params = new ECNamedCurveSpec("prime256v1", spec.getCurve(), spec.getG(), spec.getN());    ECPoint point =  ECPointUtil.deprePoint(params.getCurve(), pubKey);    ECPublicKeySpec pubKeySpec = new ECPublicKeySpec(point, params);    ECPublicKey pk = (ECPublicKey) kf.generatePublic(pubKeySpec);    return pk;}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5487824.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存