51 KeyStore keyStore = KeyStore.getInstance(
"JKS");
52 keyStore.load(
new FileInputStream(
model.
get(JavaKeystoreKeyProviderFactory.KEYSTORE_KEY)),
model.
get(JavaKeystoreKeyProviderFactory.KEYSTORE_PASSWORD_KEY).toCharArray());
54 PrivateKey privateKey = (PrivateKey) keyStore.getKey(
model.
get(JavaKeystoreKeyProviderFactory.KEY_ALIAS_KEY),
model.
get(JavaKeystoreKeyProviderFactory.KEY_PASSWORD_KEY).toCharArray());
55 PublicKey publicKey = KeyUtils.extractPublicKey(privateKey);
57 KeyPair keyPair =
new KeyPair(publicKey, privateKey);
59 X509Certificate certificate = (X509Certificate) keyStore.getCertificate(
model.
get(JavaKeystoreKeyProviderFactory.KEY_ALIAS_KEY));
60 if (certificate == null) {
61 certificate = CertificateUtils.generateV1SelfSignedCertificate(keyPair, realm.getName());
65 }
catch (KeyStoreException kse) {
66 throw new RuntimeException(
"KeyStore error on server. " + kse.getMessage(), kse);
67 }
catch (FileNotFoundException fnfe) {
68 throw new RuntimeException(
"File not found on server. " + fnfe.getMessage(), fnfe);
69 }
catch (IOException ioe) {
70 throw new RuntimeException(
"IO error on server. " + ioe.getMessage(), ioe);
71 }
catch (NoSuchAlgorithmException nsae) {
72 throw new RuntimeException(
"Algorithm not available on server. " + nsae.getMessage(), nsae);
73 }
catch (CertificateException ce) {
74 throw new RuntimeException(
"Certificate error on server. " + ce.getMessage(), ce);
75 }
catch (UnrecoverableKeyException uke) {
76 throw new RuntimeException(
"Keystore on server can not be recovered. " + uke.getMessage(), uke);
KeyWrapper createKeyWrapper(KeyPair keyPair, X509Certificate certificate)
Definition: AbstractRsaKeyProvider.java:67
final ComponentModel model
Definition: AbstractRsaKeyProvider.java:41
String get(String key)
Definition: ComponentModel.java:83