Codes zum Generieren eines öffentlichen Schlüssels in einem elliptischen Kurvenalgorithmus unter Verwendung eines bestimmten privaten Schlüssels

Ich muss den ECC-Algorithmus (Elliptic Curve Cryptography) mit jdk 1.7 implementieren. Ich habe versucht, Hüpfburg, sunEC, zu verwenden, aber sie alle gaben Fehler und Irrtümer. Mein Ziel ist es, mit dem privaten Schlüssel eine elliptische Kurve zu erzeugen, die ich dem System geben werde.

Daher muss ich einen genauen Code erhalten, um einen öffentlichen Schlüssel mit einem bestimmten privaten Schlüssel unter Verwendung von jdk1.7 zu generieren. Die IDE, die ich benutze, ist Ecllipse. Und ich muss wissen, welche anderen Parameter sollte ich außer einem privaten Schlüssel erhalten? Reicht es aus, nur einen Kurvenpunkt und den privaten Schlüssel anzugeben?

Kann mir jemand helfen, aus privatem Schlüssel einen öffentlichen Schlüssel zu generieren? Ich kann den Rest meiner Implementierung verwalten.

Wenn Sie wissen, wie Sie mit Java Schlüssel für Elliptic Curve Cryptography implementieren, sagen Sie mir bitte, ob dieser Code korrekt ist.

public class ECCrypt {

    private ECPoint curve_point;

      public ECCrypt(ECPoint curve_point) {
        this.curve_point = curve_point;
      }

public BigInteger makePublicKey(BigInteger privateKey) {
        ECPoint ecPublicKey = new ECPoint(curve_point);
        ecPublicKey.mult(privateKey);
        return ecPublicKey.pack();
}


public static void main(String[] argv) throws Exception {
        java.util.Random rnd = new java.util.Random();
        ECPoint cp = new ECPoint();
        cp.random(rnd);
        ECCrypt ec = new ECCrypt(cp);
        BigInteger priv = new BigInteger(255,rnd);
        BigInteger pub = ec.makePublicKey(priv);

}

Vielen Dank!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage