public static boolean equals()

in kerby-common/kerby-util/src/main/java/org/apache/kerby/util/Util.java [72:104]


    public static boolean equals(KeyStore ks1, KeyStore ks2) throws KeyStoreException {
        if (ks1 == null || ks2 == null) {
            return ks1 == null && ks2 == null;
        }
        Set<String> aliases1 = aliases(ks1);
        Set<String> aliases2 = aliases(ks2);
        if (aliases1.equals(aliases2)) {
            for (String s : aliases1) {
                if (ks1.isCertificateEntry(s) != ks2.isCertificateEntry(s)) {
                    return false;
                }
                if (ks1.isKeyEntry(s) != ks2.isKeyEntry(s)) {
                    return false;
                }
                if (ks1.isCertificateEntry(s)) {
                    Certificate[] cc1 = ks1.getCertificateChain(s);
                    Certificate[] cc2 = ks2.getCertificateChain(s);
                    if (!Arrays.equals(cc1, cc2)) {
                        return false;
                    }

                    Certificate c1 = ks1.getCertificate(s);
                    Certificate c2 = ks2.getCertificate(s);
                    if (!c1.equals(c2)) {
                        return false;
                    }
                }

                // should we bother checking keys?   maybe one day....
            }
        }
        return true;
    }