我正在使用Java Cryptography Extension来进行椭圆曲线加密。我提出的选择曲线(基于http://safecurves.cr.yp.to/)都是蒙哥马利方程,我没有找到任何方式在JCE中表示/处理它们。那么有没有办法在JCE中用蒙哥马利方程做ECC?
我正在使用Java 7和Bouncy Castle作为JCE Provider。
这是我正在处理的实际代码:
import java.security.spec.ECFieldFp;
import java.security.spec.ECParameterSpec;
import java.security.spec.ECPoint;
import java.security.spec.EllipticCurve;
EllipticCurve curve = new EllipticCurve(
new ECFieldFp(prime), a, b);
ECParameterSpec ecSpec = new ECParameterSpec(
curve,
basePoint,
basePointOrder,
coFactor);
KeyPairGenerator g = KeyPairGenerator.getInstance("ECDSA", "BC");
g.initialize(ecSpec, new SecureRandom());
pair = g.generateKeyPair();