Create a CSR in Java
http://www.bouncycastle.org/latest_releases.html
javac -cp ".:/usr/share/java/bcprov-jdk16-145.jar" CSRGenerator.java
java -cp ".:/usr/share/java/bcprov-jdk16-145.jar" CSRGenerator
CSRGenerator.java
import org.bouncycastle.jce.PKCS10CertificationRequest;
import java.net.URL;
import java.security.*;
import java.security.cert.*;
import java.io.*;
import javax.security.auth.x500.X500Principal;
import org.bouncycastle.openssl.PEMWriter;
public class CSRGenerator
{
public static void main(String[] args) throws Exception
{
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(2048);
KeyPair keypair = keyGen.genKeyPair();
PrivateKey privateKey = keypair.getPrivate();
PublicKey publicKey = keypair.getPublic();
//X500Principal subject = new X500Principal("CN=Test V3 Certificate");
X500Principal subject = new X500Principal("CN=local.zedwood.com, O=zedwood, OU=org, L=Orem, ST=Utah, C=US");
PKCS10CertificationRequest csr = new PKCS10CertificationRequest(
"SHA1withRSA",
subject,
keypair.getPublic(),
null,
keypair.getPrivate()
);
//byte[] outBytes = csr.getEncoded();
//FileOutputStream f = new FileOutputStream("outfile.csr_bin");
//f.write(outBytes);
//f.close();
FileWriter fw = new FileWriter("outfile.csr");
PEMWriter pm = new PEMWriter(fw);
pm.writeObject(csr);
pm.close();
fw.close();
}
}code snippets are licensed under Creative Commons CC-By-SA 3.0 (unless otherwise specified)
|