74 CommandLineParser parser =
new BasicParser();
76 CommandLine cmd = null;
80 if (cmd.hasOption(
HELP))
88 String keyAlias = cmd.getOptionValue(
KEY_ALIAS);
89 String exportFile = cmd.getOptionValue(
EXPORT_FILE);
92 SecurityProviderUtility.installBCProvider(
true);
94 OxAuthCryptoProvider cryptoProvider =
new OxAuthCryptoProvider(keyStore, keyStorePasswd,
95 "CN=oxAuth CA Certificates");
96 PrivateKey privateKey = cryptoProvider.getPrivateKey(keyAlias);
97 String base64EncodedKey = WordUtils.wrap(
new String(Base64.encode(privateKey.getEncoded())), 64,
100 StringBuilder sb =
new StringBuilder();
101 SignatureAlgorithm signatureAlgorithm = cryptoProvider.getSignatureAlgorithm(keyAlias);
102 if (SignatureAlgorithmFamily.RSA.equals(signatureAlgorithm.getFamily())) {
103 sb.append(
"-----BEGIN RSA PRIVATE KEY-----\n");
104 sb.append(base64EncodedKey);
106 sb.append(
"-----END RSA PRIVATE KEY-----\n");
108 sb.append(
"-----BEGIN PRIVATE KEY-----\n");
109 sb.append(base64EncodedKey);
111 sb.append(
"-----END PRIVATE KEY-----\n");
114 FileUtils.writeStringToFile(
new File(exportFile), sb.toString());
115 }
catch (Exception e) {
116 log.error(
"Failed to export key", e);
122 }
catch (ParseException e) {
123 log.error(
"Failed to export key", e);
static final String KEY_ALIAS
Definition: KeyExporter.java:45
Options options
Definition: KeyExporter.java:61
static final String EXPORT_FILE
Definition: KeyExporter.java:46
static final String HELP
Definition: KeyExporter.java:47
static final String KEY_STORE_PASSWORD
Definition: KeyExporter.java:44
String [] args
Definition: KeyExporter.java:60
static final String KEY_STORE_FILE
Definition: KeyExporter.java:43
static final Logger log
Definition: KeyExporter.java:48
void help()
Definition: KeyExporter.java:128