package com.qianwen.license.keygen; import java.io.IOException; import cn.hutool.core.util.RuntimeUtil; public class GenUtil { public static void genKeyPair(String storeFilename) throws IOException { StringBuffer cmd = new StringBuffer(); //cmd.append("D:\\Java\\jdk1.8.0_221\\bin\\"); cmd.append("keytool -genkey -v -alias privateKey -keyalg DSA -keysize 1024 -validity 3650 "); cmd.append("-keystore d:/cert/"+storeFilename+" "); cmd.append("-keypass a1b2c3 -storepass a1b2c3 "); cmd.append("-dname \"CN=localhost,OU=cn,O=cn,L=cn,ST=cn,C=cn\""); String str = RuntimeUtil.execForStr(cmd.toString()); System.out.println(str); //Process ps = Runtime.getRuntime().exec(cmd.toString()); //ps.destroy(); } public static void exportCert(String storeFilename) throws IOException { StringBuffer cmd = new StringBuffer(); //cmd.append("D:\\Java\\jdk1.8.0_221\\bin\\"); //keytool -export -alias privateKey -storepass "pristore_qw_1234" -file certfile.cer -keystore privateKeys.store cmd.append("keytool -export -alias privateKey -file d:/cert/certfile.cer -keystore d:/cert/"+storeFilename+" -storepass a1b2c3"); String str = RuntimeUtil.execForStr(cmd.toString()); System.out.println(str); //Process ps = Runtime.getRuntime().exec(cmd.toString()); //ps.destroy(); } public static void importCertToPublicStore(String storeFilename) throws IOException { StringBuffer cmd = new StringBuffer(); cmd.append("cmd.exe /c echo y | keytool -import -alias publiccert -file d:/cert/certfile.cer -keystore d:/cert/"+storeFilename+" -storepass a1b2c3"); String str = RuntimeUtil.execForStr(cmd.toString()); System.out.println(str); //Process ps = Runtime.getRuntime().exec(cmd.toString()); //ps.destroy(); } }