Sample code for 30+ languages & platforms
Java Requires Chilkat v11.0.0+

Generate an ECDSA Key

See more ECC Examples

Demonstrates how to generate an ECDSA key.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Ecc;
import com.chilkatsoft.chilkat2.PrivateKey;
import com.chilkatsoft.chilkat2.Prng;

public class ChilkatExample {

    public static void main(String[] args) {
        // This requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        // Create a Fortuna PRNG and seed it with system entropy.
        // This will be our source of random data for generating the ECC private key.
        Prng fortuna = new Prng();
        String entropy = fortuna.getEntropy(32, "base64");
        fortuna.addEntropy(entropy, "base64");

        Ecc ecc = new Ecc();

        // Generate a random ECC private key on the secp256r1 curve.
        // Chilkat also supports other curves, such as secp384r1, secp521r1, and secp256k1.

        PrivateKey privKey = new PrivateKey();
        try {
            ecc.genKey("secp256r1", fortuna, privKey);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        System.out.println(privKey.getXml());

        // Save the private key to PKCS8 encrypted PEM
        // (The private key can be saved in a variety of different formats. See the online reference documentation.)
        try {
            privKey.savePkcs8EncryptedPemFile("pemPassword", "myPemFiles/eccKey123.pem");
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
        }

        System.out.println("finished.");
    }
}