Search code examples
javacertificatekeystore

Generating certification chain


I need to generate certification chain in my java application becouse its needed when storing privatekey to keystore? Can anybody help me out. I have no idea how to do it..

I need to generate RSA keypair and then store it to keystore. Right now my code looks like this:

public static void main(String[] args)
{
            String issuerDN = null;
            String addKeyName = "mynewkey";
    String delKeyName = null;
    String password = "2222";
    boolean listStore = true;
            boolean deleteKeysAftherWrap = false;

    try
    {
        /* make sure that we have access to the eracom provider */
        Provider p = new ERACOMProvider();
        Security.addProvider(p);

                    int keySize = 1024;
        KeyPair keyPair = null;

        /* get the eracom keystore - access to the adapter */
        KeyStore keyStore = KeyStore.getInstance("CRYPTOKI", p.getName());

        /* LOAD the keystore from the adapter */
        keyStore.load(null, password.toCharArray());

        if (addKeyName != null)
        {
            /* This key cannot be added to the keystore if it already exists */
            if (keyStore.containsAlias(addKeyName))
            {
                println("");
                println("Key name already exists");
                println("");
            }

            KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA", p.getName());

                            keyPairGenerator.initialize(keySize);

                            keyPair = keyPairGenerator.generateKeyPair();

                            PublicKey pubKey = keyPair.getPublic();
                            PrivateKey privKey = keyPair.getPrivate();

            keyStore.setKeyEntry("newpub", pubKey, null, null);
                            keyStore.setKeyEntry("newpriv", privKey, null, null});
        }

the keys are generated but it asks certification chain for storing private key. And that is the problem right now. How can i generate the certification chain, do i have to generate certifications first, when yes then how?


Solution

  • Not sure what are you trying to achieve, but some time ago I've used this little app (source code included) to insert an existing private key into a keystore. Hopefully you'll find this useful: http://www.agentbob.info/agentbob/79-AB.html