Java Code Examples for java.security.Key#equals()
The following examples show how to use
java.security.Key#equals() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ConvertP12Test.java From dragonwell8_jdk with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 2
Source File: ConvertP12Test.java From jdk8u-jdk with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 3
Source File: KeyStoreState.java From keystore-explorer with GNU General Public License v3.0 | 6 votes |
protected boolean isEntryPrivateKeyEqual(KeyStoreState targetState, String alias, Password password) throws GeneralSecurityException { Key currentKey = keyStore.getKey(alias, password.toCharArray()); Key targetKey = targetState.getKeyStore().getKey(alias, password.toCharArray()); // JDKDSAPrivateKey has no equals method defined if ((currentKey instanceof JDKDSAPrivateKey) || (targetKey instanceof JDKDSAPrivateKey)) { DSAPrivateKey currentDsaKey = (DSAPrivateKey) currentKey; DSAPrivateKey targetDsaKey = (DSAPrivateKey) targetKey; return currentDsaKey.getX().equals(targetDsaKey.getX()) && currentDsaKey.getParams().getG().equals(targetDsaKey.getParams().getG()) && currentDsaKey.getParams().getP().equals(targetDsaKey.getParams().getP()) && currentDsaKey.getParams().getQ().equals(targetDsaKey.getParams().getQ()); } else { return currentKey.equals(targetKey); } }
Example 4
Source File: ConvertP12Test.java From openjdk-jdk9 with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 5
Source File: ConvertP12Test.java From hottub with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 6
Source File: ConvertP12Test.java From openjdk-jdk8u with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 7
Source File: ConvertP12Test.java From jdk8u_jdk with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 8
Source File: ConvertP12Test.java From TencentKona-8 with GNU General Public License v2.0 | 6 votes |
private void compareKeyEntry(KeyStore a, KeyStore b, String aPass, String bPass, String alias) throws KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException { Certificate[] certsA = a.getCertificateChain(alias); Certificate[] certsB = b.getCertificateChain(alias); if (!Arrays.equals(certsA, certsB)) { throw new RuntimeException("Certs don't match for alias:" + alias); } Key keyA = a.getKey(alias, aPass.toCharArray()); Key keyB = b.getKey(alias, bPass.toCharArray()); if (!keyA.equals(keyB)) { throw new RuntimeException( "Key don't match for alias:" + alias); } }
Example 9
Source File: JsonWebStructure.java From Jose4j with Apache License 2.0 | 5 votes |
public void setKey(Key key) { boolean same = (key == null ? this.key == null : key.equals(this.key)); if (!same) { onNewKey(); } this.key = key; }
Example 10
Source File: ExplicitKeyTrustEvaluator.java From lams with GNU General Public License v2.0 | 5 votes |
/** * Evaluate trust. * * @param untrustedKey the untrusted key to evaluate * @param trustedKeys basis for trust * @return true if trust can be established, false otherwise */ public boolean validate(Key untrustedKey, Iterable<Key> trustedKeys) { for (Key trustedKey : trustedKeys) { if (untrustedKey.equals(trustedKey)) { return true; } } return false; }
Example 11
Source File: WriteP12Test.java From jdk8u_jdk with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 12
Source File: WriteP12Test.java From openjdk-jdk8u-backup with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 13
Source File: WriteP12Test.java From hottub with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 14
Source File: WriteP12Test.java From openjdk-jdk9 with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 15
Source File: WriteP12Test.java From TencentKona-8 with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 16
Source File: TestKeyStoreEntry.java From openjdk-jdk9 with GNU General Public License v2.0 | 4 votes |
public void runTest(Provider p) throws Exception { try (FileOutputStream fos = new FileOutputStream("jceks"); FileInputStream fis = new FileInputStream("jceks");) { KeyStore ks = KeyStore.getInstance("jceks", p); // create an empty key store ks.load(null, null); // store the secret keys String aliasHead = new String("secretKey"); for (int j = 0; j < NUM_ALGOS; j++) { ks.setKeyEntry(aliasHead + j, sks[j], PASSWDK, null); } // write the key store out to a file ks.store(fos, PASSWDF); // wipe clean the existing key store for (int k = 0; k < NUM_ALGOS; k++) { ks.deleteEntry(aliasHead + k); } if (ks.size() != 0) { throw new RuntimeException("ERROR: re-initialization failed"); } // reload the key store with the file ks.load(fis, PASSWDF); // check the integrity/validaty of the key store Key temp = null; String alias = null; if (ks.size() != NUM_ALGOS) { throw new RuntimeException("ERROR: wrong number of key" + " entries"); } for (int m = 0; m < ks.size(); m++) { alias = aliasHead + m; temp = ks.getKey(alias, PASSWDK); // compare the keys if (!temp.equals(sks[m])) { throw new RuntimeException("ERROR: key comparison (" + m + ") failed"); } // check the type of key if (ks.isCertificateEntry(alias) || !ks.isKeyEntry(alias)) { throw new RuntimeException("ERROR: type identification (" + m + ") failed"); } } } }
Example 17
Source File: TestKeyStoreEntry.java From dragonwell8_jdk with GNU General Public License v2.0 | 4 votes |
public void runTest(Provider p) throws Exception { try (FileOutputStream fos = new FileOutputStream("jceks"); FileInputStream fis = new FileInputStream("jceks");) { KeyStore ks = KeyStore.getInstance("jceks", p); // create an empty key store ks.load(null, null); // store the secret keys String aliasHead = new String("secretKey"); for (int j = 0; j < NUM_ALGOS; j++) { ks.setKeyEntry(aliasHead + j, sks[j], PASSWDK, null); } // write the key store out to a file ks.store(fos, PASSWDF); // wipe clean the existing key store for (int k = 0; k < NUM_ALGOS; k++) { ks.deleteEntry(aliasHead + k); } if (ks.size() != 0) { throw new RuntimeException("ERROR: re-initialization failed"); } // reload the key store with the file ks.load(fis, PASSWDF); // check the integrity/validaty of the key store Key temp = null; String alias = null; if (ks.size() != NUM_ALGOS) { throw new RuntimeException("ERROR: wrong number of key" + " entries"); } for (int m = 0; m < ks.size(); m++) { alias = aliasHead + m; temp = ks.getKey(alias, PASSWDK); // compare the keys if (!temp.equals(sks[m])) { throw new RuntimeException("ERROR: key comparison (" + m + ") failed"); } // check the type of key if (ks.isCertificateEntry(alias) || !ks.isKeyEntry(alias)) { throw new RuntimeException("ERROR: type identification (" + m + ") failed"); } } } }
Example 18
Source File: WriteP12Test.java From jdk8u-jdk with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 19
Source File: WriteP12Test.java From dragonwell8_jdk with GNU General Public License v2.0 | 4 votes |
private void test(Certificate certs[], String inKeyStorePath, String userAlias, String outStorePass, String outKeyPass) throws KeyStoreException, NoSuchProviderException, IOException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException { // init output key store KeyStore outputKeyStore = KeyStore.getInstance("pkcs12", "SunJSSE"); outputKeyStore.load(null, null); try (FileOutputStream fout = new FileOutputStream(OUT_KEYSTORE)) { // KeyStore have encoded by Base64.getMimeEncoder().encode(),need // decode first. byte[] input = Files.readAllBytes(Paths.get(CERT_PATH, inKeyStorePath)); ByteArrayInputStream arrayIn = new ByteArrayInputStream(Base64 .getMimeDecoder().decode(input)); // input key store KeyStore inputKeyStore = KeyStore.getInstance(IN_KEYSTORE_TYPE, IN_KEYSTORE_PRV); inputKeyStore.load(arrayIn, IN_STORE_PASS.toCharArray()); // add key/certificate to output key store Key key = inputKeyStore .getKey(userAlias, IN_KEY_PASS.toCharArray()); out.println("Input Key Algorithm " + key.getAlgorithm()); out.println("====Input Certs====="); if (certs == null) { certs = new Certificate[] { inputKeyStore .getCertificate(userAlias) }; } for (Certificate cert : certs) { out.println(((X509Certificate) cert).getSubjectDN()); } outputKeyStore.setKeyEntry(userAlias, key, outKeyPass.toCharArray(), certs); Certificate retCerts[] = outputKeyStore .getCertificateChain(userAlias); out.println("====Output Certs====="); for (Certificate retCert : retCerts) { out.println(((X509Certificate) retCert).getSubjectDN()); } out.println("====Output Key Algorithm====="); Key outKey = outputKeyStore.getKey(userAlias, outKeyPass.toCharArray()); out.println(outKey.getAlgorithm()); if (!key.equals(outKey)) { throw new RuntimeException("key don't match"); } if (!Arrays.equals(certs, retCerts)) { throw new RuntimeException("certs don't match"); } // save output outputKeyStore.store(fout, outStorePass.toCharArray()); // test output testKeyStore(outputKeyStore, outKeyPass.toCharArray()); } }
Example 20
Source File: ExplicitKeyTrustEvaluator.java From lams with GNU General Public License v2.0 | 2 votes |
/** * Evaluate trust. * * @param untrustedKey the untrusted key to evaluate * @param trustedKey basis for trust * @return true if trust can be established, false otherwise */ public boolean validate(Key untrustedKey, Key trustedKey) { return untrustedKey.equals(trustedKey); }