如何使用 FIPS BouncyCastle 將 ECPrivateKey 轉換為 ECPublicKey?我使用以下代碼(稍微簡化)將 ECPrivateKey 轉換為 ECPublicKey:public static ECPublicKey getPublicKeyFromPrivateKey(ECPrivateKey privateKey) throws GeneralSecurityException { final KeyFactory keyFactory = KeyFactory.getInstance("ECDSA", new BouncyCastleProvider()); final BCECPrivateKey bcecPrivateKey = (BCECPrivateKey) privateKey; final ECParameterSpec ecSpec = bcecPrivateKey.getParameters(); final ECPoint q = ecSpec.getG().multiply(bcecPrivateKey.getD()); final byte[] qBytes = q.getEncoded(false); final ECPoint point = ecSpec.getCurve().decodePoint(qBytes); final ECPublicKeySpec pubSpec = new ECPublicKeySpec(point, ecSpec); return (ECPublicKey) keyFactory.generatePublic(pubSpec);}這對于非 FIPS BouncyCastle 工作正?!,F在,我們需要以符合 FIPS 的方式做同樣的事情。這里的問題是像 ECParameterSpec 這樣的類在 FIPS BouncyCastle 1.0.1 中似乎不存在。我們如何使用 FIPS BouncyCastle 做同樣的事情?
添加回答
舉報
0/150
提交
取消