1fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root/*
2fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * Copyright (C) 2013 The Android Open Source Project
3fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root *
4fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * Licensed under the Apache License, Version 2.0 (the "License");
5fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * you may not use this file except in compliance with the License.
6fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * You may obtain a copy of the License at
7fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root *
8fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root *      http://www.apache.org/licenses/LICENSE-2.0
9fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root *
10fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * Unless required by applicable law or agreed to in writing, software
11fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * distributed under the License is distributed on an "AS IS" BASIS,
12fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * See the License for the specific language governing permissions and
14fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root * limitations under the License.
15fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root */
16fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
17fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootpackage libcore.java.security.cert;
18fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
19fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.io.File;
20fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.io.FileInputStream;
21fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.io.IOException;
22fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.io.InputStream;
23fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.InvalidAlgorithmParameterException;
24fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.NoSuchAlgorithmException;
25fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CertPath;
26fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CertPathValidator;
27fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CertPathValidatorException;
28fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CertStore;
29fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CertificateFactory;
30fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.CollectionCertStoreParameters;
31fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.PKIXCertPathValidatorResult;
32fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.PKIXParameters;
33fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.TrustAnchor;
34fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.X509CRL;
35fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.security.cert.X509Certificate;
36fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.util.ArrayList;
37fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.util.Arrays;
38fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.util.Collection;
39fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.util.HashSet;
40fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport java.util.Set;
41fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
42fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootimport junit.framework.TestCase;
43fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
44fa3861dfdf1531ce20a694477408af47bb44a754Kenny Rootpublic class X509CertificateNistPkitsTest extends TestCase {
45fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public static final String RESOURCE_PACKAGE = "/tests/resources/";
46fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
47fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public static InputStream getStream(String name) {
48fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        // If we have the resources packaged up in our jar file, get them that way.
49fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String path = RESOURCE_PACKAGE + name;
50fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        InputStream result = X509CertificateNistPkitsTest.class.getResourceAsStream(path);
51fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        if (result != null) {
52fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            return result;
53fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
54fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        // Otherwise, if we're in an Android build tree, get the files directly.
55fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String ANDROID_BUILD_TOP = System.getenv("ANDROID_BUILD_TOP");
56fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        if (ANDROID_BUILD_TOP != null) {
57fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            File resource = new File(ANDROID_BUILD_TOP + "/external/nist-pkits/res" + path);
58fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            if (resource.exists()) {
59fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                try {
60fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                    return new FileInputStream(resource);
61fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                } catch (IOException ex) {
62fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                    throw new IllegalArgumentException("Couldn't open: " + resource, ex);
63fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                }
64fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            }
65fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
66fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        throw new IllegalArgumentException("No such resource: " + path);
67fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
68fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
69fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private final X509Certificate getCertificate(CertificateFactory f, String name)
70fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            throws Exception {
71fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        final String fileName = "nist-pkits/certs/" + name;
72fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        final InputStream is = getStream(fileName);
73fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertNotNull("File does not exist: " + fileName, is);
74fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        try {
75fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            return (X509Certificate) f.generateCertificate(is);
76fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        } finally {
77fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            try {
78fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                is.close();
79fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            } catch (IOException ignored) {
80fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            }
81fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
82fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
83fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
84fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private final X509Certificate[] getCertificates(CertificateFactory f, String[] names)
85fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            throws Exception {
86fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509Certificate[] certs = new X509Certificate[names.length];
87fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
88fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        for (int i = 0; i < names.length; i++) {
89fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            certs[i] = getCertificate(f, names[i]);
90fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
91fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
92fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        return certs;
93fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
94fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
95fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private final X509CRL getCRL(CertificateFactory f, String name) throws Exception {
96fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        final String fileName = "nist-pkits/crls/" + name;
97fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        final InputStream is = getStream(fileName);
98fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertNotNull("File does not exist: " + fileName, is);
99fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        try {
100fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            return (X509CRL) f.generateCRL(is);
101fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        } finally {
102fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            try {
103fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                is.close();
104fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            } catch (IOException ignored) {
105fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            }
106fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
107fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
108fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
109fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private final X509CRL[] getCRLs(CertificateFactory f, String[] names) throws Exception {
110fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509CRL[] crls = new X509CRL[names.length];
111fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
112fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        for (int i = 0; i < names.length; i++) {
113fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            crls[i] = getCRL(f, names[i]);
114fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
115fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
116fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        return crls;
117fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
118fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
119fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private CertPath getTestPath(CertificateFactory f, String[] pathCerts) throws Exception {
120fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509Certificate[] certs = getCertificates(f, pathCerts);
121fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        return f.generateCertPath(Arrays.asList(certs));
122fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
123fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
124fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private PKIXParameters getTestPathParams(CertificateFactory f, String trustedCAName,
125fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            String[] pathCerts, String[] pathCRLs) throws Exception {
126fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509Certificate[] certs = getCertificates(f, pathCerts);
127fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509CRL[] crls = getCRLs(f, pathCRLs);
128fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        X509Certificate trustedCA = getCertificate(f, trustedCAName);
129fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
130fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        Collection<Object> certCollection = new ArrayList<Object>();
131fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        certCollection.addAll(Arrays.asList(crls));
132fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        certCollection.addAll(Arrays.asList(certs));
133fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        certCollection.add(trustedCA);
134fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CollectionCertStoreParameters certStoreParams = new CollectionCertStoreParameters(
135fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                certCollection);
136fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertStore certStore = CertStore.getInstance("Collection", certStoreParams);
137fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
138fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        Set<TrustAnchor> anchors = new HashSet<TrustAnchor>();
139fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        anchors.add(new TrustAnchor(trustedCA, null));
140fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
141fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        PKIXParameters params = new PKIXParameters(anchors);
142fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        params.addCertStore(certStore);
143fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
144fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        return params;
145fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
146fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
147fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private void assertInvalidPath(String trustAnchor, String[] certs, String[] crls)
148fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            throws Exception, NoSuchAlgorithmException, InvalidAlgorithmParameterException {
149fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertificateFactory f = CertificateFactory.getInstance("X.509");
150fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
151fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        PKIXParameters params = getTestPathParams(f, trustAnchor, certs, crls);
152fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertPath cp = getTestPath(f, certs);
153fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertPathValidator cpv = CertPathValidator.getInstance("PKIX");
154fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
155fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        try {
156fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            PKIXCertPathValidatorResult cpvResult = (PKIXCertPathValidatorResult) cpv.validate(cp,
157fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                    params);
158fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            fail();
159fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        } catch (CertPathValidatorException expected) {
160fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        }
161fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
162fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
163fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    private void assertValidPath(String trustAnchor, String[] certs, String[] crls)
164fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            throws Exception, NoSuchAlgorithmException, CertPathValidatorException,
165fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root            InvalidAlgorithmParameterException {
166fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertificateFactory f = CertificateFactory.getInstance("X.509");
167fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
168fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        PKIXParameters params = getTestPathParams(f, trustAnchor, certs, crls);
169fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertPath cp = getTestPath(f, certs);
170fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        CertPathValidator cpv = CertPathValidator.getInstance("PKIX");
171fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
172fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        PKIXCertPathValidatorResult cpvResult = (PKIXCertPathValidatorResult) cpv.validate(cp,
173fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                params);
174fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
175fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
176fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /* DO NOT MANUALLY EDIT -- BEGIN AUTOMATICALLY GENERATED TESTS */
177fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.1 */
178fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_ValidSignaturesTest1() throws Exception {
179fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
180fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
181fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
182fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidCertificatePathTest1EE.crt",
183fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
184fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
185fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
186fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
187fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
188fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
189fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
190fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
191fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
192fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
193fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
194fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.2 */
195fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_InvalidCASignatureTest2() throws Exception {
196fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
197fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
198fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
199fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidCASignatureTest2EE.crt",
200fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadSignedCACert.crt",
201fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
202fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
203fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
204fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
205fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadSignedCACRL.crl",
206fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
207fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
208fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
209fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
210fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
211fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.3 */
212fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_InvalidEESignatureTest3() throws Exception {
213fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
214fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
215fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
216fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidEESignatureTest3EE.crt",
217fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
218fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
219fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
220fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
221fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
222fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
223fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
224fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
225fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
226fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
227fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
228fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.4 */
229fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_ValidDSASignaturesTest4() throws Exception {
230fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
231fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
232fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
233fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDSASignaturesTest4EE.crt",
234fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACert.crt",
235fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
236fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
237fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
238fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
239fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACRL.crl",
240fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
241fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
242fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
243fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
244fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
245fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.5 */
246fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_ValidDSAParameterInheritanceTest5() throws Exception {
247fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
248fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
249fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
250fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDSAParameterInheritanceTest5EE.crt",
251fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSAParametersInheritedCACert.crt",
252fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACert.crt",
253fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
254fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
255fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
256fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
257fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACRL.crl",
258fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSAParametersInheritedCACRL.crl",
259fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
260fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
261fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
262fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
263fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
264fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.1.6 */
265fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testSignatureVerification_InvalidDSASignatureTest6() throws Exception {
266fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
267fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
268fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
269fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDSASignatureTest6EE.crt",
270fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACert.crt",
271fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
272fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
273fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
274fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
275fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "DSACACRL.crl",
276fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
277fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
278fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
279fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
280fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
281fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.1 */
282fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_InvalidCAnotBeforeDateTest1() throws Exception {
283fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
284fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
285fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
286fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidCAnotBeforeDateTest1EE.crt",
287fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadnotBeforeDateCACert.crt",
288fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
289fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
290fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
291fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
292fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadnotBeforeDateCACRL.crl",
293fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
294fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
295fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
296fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
297fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
298fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.2 */
299fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_InvalidEEnotBeforeDateTest2() throws Exception {
300fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
301fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
302fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
303fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidEEnotBeforeDateTest2EE.crt",
304fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
305fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
306fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
307fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
308fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
309fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
310fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
311fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
312fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
313fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
314fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
315fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.3 */
316fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_Validpre2000UTCnotBeforeDateTest3() throws Exception {
317fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
318fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
319fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
320fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "Validpre2000UTCnotBeforeDateTest3EE.crt",
321fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
322fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
323fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
324fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
325fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
326fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
327fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
328fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
329fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
330fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
331fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
332fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.4 */
333fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_ValidGeneralizedTimenotBeforeDateTest4() throws Exception {
334fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
335fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
336fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
337fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidGeneralizedTimenotBeforeDateTest4EE.crt",
338fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
339fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
340fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
341fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
342fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
343fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
344fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
345fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
346fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
347fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
348fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
349fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.5 */
350fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_InvalidCAnotAfterDateTest5() throws Exception {
351fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
352fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
353fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
354fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidCAnotAfterDateTest5EE.crt",
355fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadnotAfterDateCACert.crt",
356fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
357fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
358fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
359fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
360fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadnotAfterDateCACRL.crl",
361fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
362fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
363fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
364fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
365fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
366fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.6 */
367fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_InvalidEEnotAfterDateTest6() throws Exception {
368fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
369fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
370fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
371fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidEEnotAfterDateTest6EE.crt",
372fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
373fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
374fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
375fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
376fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
377fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
378fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
379fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
380fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
381fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
382fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
383fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.7 */
384fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_Invalidpre2000UTCEEnotAfterDateTest7() throws Exception {
385fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
386fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
387fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
388fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "Invalidpre2000UTCEEnotAfterDateTest7EE.crt",
389fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
390fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
391fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
392fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
393fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
394fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
395fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
396fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
397fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
398fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
399fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
400fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.2.8 */
401fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testValidityPeriods_ValidGeneralizedTimenotAfterDateTest8() throws Exception {
402fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
403fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
404fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
405fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidGeneralizedTimenotAfterDateTest8EE.crt",
406fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
407fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
408fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
409fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
410fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
411fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
412fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
413fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
414fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
415fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
416fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
417fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.1 */
418fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_InvalidNameChainingEETest1() throws Exception {
419fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
420fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
421fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
422fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidNameChainingTest1EE.crt",
423fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
424fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
425fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
426fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
427fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
428fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
429fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
430fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
431fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
432fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
433fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
434fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.2 */
435fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_InvalidNameChainingOrderTest2() throws Exception {
436fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
437fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
438fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
439fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidNameChainingOrderTest2EE.crt",
440fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NameOrderingCACert.crt",
441fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
442fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
443fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
444fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
445fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NameOrderCACRL.crl",
446fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
447fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
448fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
449fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
450fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
451fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.3 */
452fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidNameChainingWhitespaceTest3() throws Exception {
453fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
454fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
455fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
456fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNameChainingWhitespaceTest3EE.crt",
457fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
458fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
459fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
460fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
461fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
462fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
463fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
464fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
465fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
466fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
467fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
468fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.4 */
469fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidNameChainingWhitespaceTest4() throws Exception {
470fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
471fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
472fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
473fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNameChainingWhitespaceTest4EE.crt",
474fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
475fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
476fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
477fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
478fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
479fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
480fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
481fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
482fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
483fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
484fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
485fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.5 */
486fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidNameChainingCapitalizationTest5() throws Exception {
487fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
488fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
489fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
490fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNameChainingCapitalizationTest5EE.crt",
491fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
492fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
493fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
494fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
495fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
496fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
497fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
498fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
499fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
500fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
501fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
502fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.6 */
503fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidNameChainingUIDsTest6() throws Exception {
504fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
505fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
506fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
507fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNameUIDsTest6EE.crt",
508fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UIDCACert.crt",
509fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
510fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
511fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
512fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
513fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UIDCACRL.crl",
514fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
515fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
516fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
517fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
518fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
519fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.7 */
520fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidRFC3280MandatoryAttributeTypesTest7() throws Exception {
521fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
522fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
523fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
524fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRFC3280MandatoryAttributeTypesTest7EE.crt",
525fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RFC3280MandatoryAttributeTypesCACert.crt",
526fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
527fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
528fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
529fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
530fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RFC3280MandatoryAttributeTypesCACRL.crl",
531fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
532fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
533fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
534fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
535fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
536fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.8 */
537fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidRFC3280OptionalAttributeTypesTest8() throws Exception {
538fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
539fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
540fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
541fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRFC3280OptionalAttributeTypesTest8EE.crt",
542fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RFC3280OptionalAttributeTypesCACert.crt",
543fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
544fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
545fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
546fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
547fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RFC3280OptionalAttributeTypesCACRL.crl",
548fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
549fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
550fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
551fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
552fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
553fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.9 */
554fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidUTF8StringEncodedNamesTest9() throws Exception {
555fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
556fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
557fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
558fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidUTF8StringEncodedNamesTest9EE.crt",
559fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UTF8StringEncodedNamesCACert.crt",
560fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
561fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
562fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
563fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
564fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UTF8StringEncodedNamesCACRL.crl",
565fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
566fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
567fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
568fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
569fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
570fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.10 */
571fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidRolloverfromPrintableStringtoUTF8StringTest10() throws Exception {
572fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
573fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
574fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
575fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRolloverfromPrintableStringtoUTF8StringTest10EE.crt",
576fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RolloverfromPrintableStringtoUTF8StringCACert.crt",
577fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
578fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
579fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
580fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
581fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RolloverfromPrintableStringtoUTF8StringCACRL.crl",
582fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
583fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
584fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
585fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
586fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
587fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.3.11 */
588fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingNameChaining_ValidUTF8StringCaseInsensitiveMatchTest11() throws Exception {
589fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
590fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
591fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
592fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidUTF8StringCaseInsensitiveMatchTest11EE.crt",
593fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UTF8StringCaseInsensitiveMatchCACert.crt",
594fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
595fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
596fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
597fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
598fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UTF8StringCaseInsensitiveMatchCACRL.crl",
599fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
600fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
601fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
602fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
603fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
604fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.1 */
605fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_MissingCRLTest1() throws Exception {
606fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
607fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
608fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
609fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidMissingCRLTest1EE.crt",
610fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NoCRLCACert.crt",
611fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
612fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
613fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
614fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
615fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
616fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
617fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
618fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
619fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
620fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.2 */
621fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidRevokedCATest2() throws Exception {
622fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
623fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
624fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
625fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidRevokedCATest2EE.crt",
626fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RevokedsubCACert.crt",
627fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
628fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
629fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
630fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
631fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
632fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
633fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "RevokedsubCACRL.crl",
634fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
635fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
636fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
637fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
638fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
639fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.3 */
640fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidRevokedEETest3() throws Exception {
641fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
642fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
643fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
644fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidRevokedEETest3EE.crt",
645fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
646fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
647fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
648fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
649fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
650fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
651fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
652fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
653fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
654fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
655fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
656fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.4 */
657fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidBadCRLSignatureTest4() throws Exception {
658fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
659fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
660fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
661fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBadCRLSignatureTest4EE.crt",
662fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadCRLSignatureCACert.crt",
663fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
664fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
665fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
666fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
667fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadCRLSignatureCACRL.crl",
668fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
669fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
670fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
671fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
672fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
673fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.5 */
674fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidBadCRLIssuerNameTest5() throws Exception {
675fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
676fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
677fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
678fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBadCRLIssuerNameTest5EE.crt",
679fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadCRLIssuerNameCACert.crt",
680fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
681fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
682fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
683fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
684fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BadCRLIssuerNameCACRL.crl",
685fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
686fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
687fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
688fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
689fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
690fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.6 */
691fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidWrongCRLTest6() throws Exception {
692fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
693fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
694fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
695fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidWrongCRLTest6EE.crt",
696fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "WrongCRLCACert.crt",
697fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
698fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
699fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
700fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
701fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "WrongCRLCACRL.crl",
702fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
703fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
704fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
705fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
706fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
707fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.7 */
708fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidTwoCRLsTest7() throws Exception {
709fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
710fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
711fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
712fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidTwoCRLsTest7EE.crt",
713fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TwoCRLsCACert.crt",
714fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
715fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
716fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
717fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
718fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TwoCRLsCAGoodCRL.crl",
719fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TwoCRLsCABadCRL.crl",
720fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
721fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
722fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
723fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
724fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
725fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.8 */
726fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidUnknownCRLEntryExtensionTest8() throws Exception {
727fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
728fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
729fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
730fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidUnknownCRLEntryExtensionTest8EE.crt",
731fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLEntryExtensionCACert.crt",
732fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
733fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
734fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
735fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
736fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLEntryExtensionCACRL.crl",
737fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
738fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
739fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
740fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
741fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
742fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.9 */
743fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidUnknownCRLExtensionTest9() throws Exception {
744fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
745fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
746fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
747fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidUnknownCRLExtensionTest9EE.crt",
748fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLExtensionCACert.crt",
749fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
750fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
751fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
752fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
753fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLExtensionCACRL.crl",
754fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
755fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
756fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
757fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
758fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
759fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.10 */
760fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidUnknownCRLExtensionTest10() throws Exception {
761fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
762fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
763fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
764fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidUnknownCRLExtensionTest10EE.crt",
765fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLExtensionCACert.crt",
766fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
767fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
768fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
769fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
770fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "UnknownCRLExtensionCACRL.crl",
771fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
772fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
773fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
774fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
775fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
776fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.11 */
777fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidOldCRLnextUpdateTest11() throws Exception {
778fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
779fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
780fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
781fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidOldCRLnextUpdateTest11EE.crt",
782fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "OldCRLnextUpdateCACert.crt",
783fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
784fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
785fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
786fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
787fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "OldCRLnextUpdateCACRL.crl",
788fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
789fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
790fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
791fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
792fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
793fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.12 */
794fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_Invalidpre2000CRLnextUpdateTest12() throws Exception {
795fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
796fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
797fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
798fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "Invalidpre2000CRLnextUpdateTest12EE.crt",
799fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pre2000CRLnextUpdateCACert.crt",
800fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
801fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
802fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
803fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
804fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pre2000CRLnextUpdateCACRL.crl",
805fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
806fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
807fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
808fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
809fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
810fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.13 */
811fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidGeneralizedTimeCRLnextUpdateTest13() throws Exception {
812fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
813fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
814fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
815fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidGeneralizedTimeCRLnextUpdateTest13EE.crt",
816fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GeneralizedTimeCRLnextUpdateCACert.crt",
817fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
818fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
819fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
820fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
821fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GeneralizedTimeCRLnextUpdateCACRL.crl",
822fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
823fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
824fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
825fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
826fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
827fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.14 */
828fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidNegativeSerialNumberTest14() throws Exception {
829fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
830fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
831fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
832fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNegativeSerialNumberTest14EE.crt",
833fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NegativeSerialNumberCACert.crt",
834fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
835fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
836fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
837fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
838fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NegativeSerialNumberCACRL.crl",
839fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
840fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
841fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
842fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
843fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
844fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.15 */
845fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidNegativeSerialNumberTest15() throws Exception {
846fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
847fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
848fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
849fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidNegativeSerialNumberTest15EE.crt",
850fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NegativeSerialNumberCACert.crt",
851fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
852fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
853fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
854fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
855fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NegativeSerialNumberCACRL.crl",
856fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
857fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
858fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
859fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
860fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
861fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.16 */
862fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidLongSerialNumberTest16() throws Exception {
863fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
864fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
865fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
866fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidLongSerialNumberTest16EE.crt",
867fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACert.crt",
868fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
869fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
870fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
871fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
872fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACRL.crl",
873fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
874fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
875fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
876fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
877fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
878fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.17 */
879fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidLongSerialNumberTest17() throws Exception {
880fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
881fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
882fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
883fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidLongSerialNumberTest17EE.crt",
884fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACert.crt",
885fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
886fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
887fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
888fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
889fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACRL.crl",
890fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
891fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
892fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
893fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
894fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
895fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.18 */
896fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidLongSerialNumberTest18() throws Exception {
897fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
898fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
899fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
900fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidLongSerialNumberTest18EE.crt",
901fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACert.crt",
902fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
903fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
904fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
905fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
906fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "LongSerialNumberCACRL.crl",
907fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
908fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
909fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
910fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
911fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
912fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.19 */
913fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_ValidSeparateCertificateandCRLKeysTest19() throws Exception {
914fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
915fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
916fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
917fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidSeparateCertificateandCRLKeysTest19EE.crt",
918fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCRLSigningCert.crt",
919fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCertificateSigningCACert.crt",
920fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
921fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
922fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
923fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
924fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCRL.crl",
925fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
926fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
927fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
928fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
929fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
930fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.20 */
931fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidSeparateCertificateandCRLKeysTest20() throws Exception {
932fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
933fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
934fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
935fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidSeparateCertificateandCRLKeysTest20EE.crt",
936fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCRLSigningCert.crt",
937fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCertificateSigningCACert.crt",
938fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
939fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
940fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
941fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
942fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCRL.crl",
943fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
944fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
945fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
946fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
947fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
948fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.4.21 */
949fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testBasicCertificateRevocationTests_InvalidSeparateCertificateandCRLKeysTest21() throws Exception {
950fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
951fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
952fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
953fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidSeparateCertificateandCRLKeysTest21EE.crt",
954fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCA2CRLSigningCert.crt",
955fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCA2CertificateSigningCACert.crt",
956fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
957fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
958fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
959fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
960fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "SeparateCertificateandCRLKeysCA2CRL.crl",
961fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
962fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
963fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
964fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
965fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
966fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.1 */
967fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_ValidBasicSelfIssuedOldWithNewTest1() throws Exception {
968fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
969fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
970fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
971fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidBasicSelfIssuedOldWithNewTest1EE.crt",
972fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyOldWithNewCACert.crt",
973fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyCACert.crt",
974fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
975fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
976fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
977fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
978fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyCACRL.crl",
979fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
980fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
981fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
982fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
983fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
984fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.2 */
985fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_InvalidBasicSelfIssuedOldWithNewTest2() throws Exception {
986fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
987fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
988fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
989fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBasicSelfIssuedOldWithNewTest2EE.crt",
990fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyOldWithNewCACert.crt",
991fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyCACert.crt",
992fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
993fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
994fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
995fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
996fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedNewKeyCACRL.crl",
997fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
998fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
999fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1000fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1001fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1002fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.3 */
1003fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_ValidBasicSelfIssuedNewWithOldTest3() throws Exception {
1004fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1005fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1006fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1007fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidBasicSelfIssuedNewWithOldTest3EE.crt",
1008fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyNewWithOldCACert.crt",
1009fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACert.crt",
1010fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1011fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1012fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1013fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1014fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeySelfIssuedCertCRL.crl",
1015fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACRL.crl",
1016fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1017fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1018fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1019fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1020fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1021fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.4 */
1022fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_ValidBasicSelfIssuedNewWithOldTest4() throws Exception {
1023fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1024fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1025fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1026fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidBasicSelfIssuedNewWithOldTest4EE.crt",
1027fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyNewWithOldCACert.crt",
1028fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACert.crt",
1029fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1030fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1031fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1032fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1033fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeySelfIssuedCertCRL.crl",
1034fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACRL.crl",
1035fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1036fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1037fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1038fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1039fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1040fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.5 */
1041fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_InvalidBasicSelfIssuedNewWithOldTest5() throws Exception {
1042fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1043fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1044fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1045fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBasicSelfIssuedNewWithOldTest5EE.crt",
1046fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyNewWithOldCACert.crt",
1047fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACert.crt",
1048fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1049fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1050fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1051fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1052fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeySelfIssuedCertCRL.crl",
1053fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedOldKeyCACRL.crl",
1054fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1055fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1056fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1057fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1058fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1059fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.6 */
1060fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_ValidBasicSelfIssuedCRLSigningKeyTest6() throws Exception {
1061fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1062fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1063fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1064fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidBasicSelfIssuedCRLSigningKeyTest6EE.crt",
1065fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCert.crt",
1066fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACert.crt",
1067fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1068fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1069fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1070fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1071fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCertCRL.crl",
1072fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACRL.crl",
1073fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1074fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1075fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1076fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1077fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1078fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.7 */
1079fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_InvalidBasicSelfIssuedCRLSigningKeyTest7() throws Exception {
1080fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1081fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1082fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1083fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBasicSelfIssuedCRLSigningKeyTest7EE.crt",
1084fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCert.crt",
1085fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACert.crt",
1086fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1087fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1088fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1089fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1090fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCertCRL.crl",
1091fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACRL.crl",
1092fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1093fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1094fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1095fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1096fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1097fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.5.8 */
1098fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingPathswithSelfIssuedCertificates_InvalidBasicSelfIssuedCRLSigningKeyTest8() throws Exception {
1099fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1100fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1101fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1102fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidBasicSelfIssuedCRLSigningKeyTest8EE.crt",
1103fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCert.crt",
1104fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACert.crt",
1105fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1106fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1107fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1108fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1109fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCRLCertCRL.crl",
1110fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "BasicSelfIssuedCRLSigningKeyCACRL.crl",
1111fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1112fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1113fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1114fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1115fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1116fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.1 */
1117fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidMissingbasicConstraintsTest1() throws Exception {
1118fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1119fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1120fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1121fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidMissingbasicConstraintsTest1EE.crt",
1122fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "MissingbasicConstraintsCACert.crt",
1123fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1124fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1125fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1126fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1127fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "MissingbasicConstraintsCACRL.crl",
1128fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1129fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1130fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1131fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1132fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1133fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.2 */
1134fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidcAFalseTest2() throws Exception {
1135fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1136fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1137fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1138fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcAFalseTest2EE.crt",
1139fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsCriticalcAFalseCACert.crt",
1140fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1141fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1142fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1143fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1144fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsCriticalcAFalseCACRL.crl",
1145fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1146fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1147fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1148fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1149fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1150fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.3 */
1151fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidcAFalseTest3() throws Exception {
1152fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1153fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1154fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1155fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcAFalseTest3EE.crt",
1156fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsNotCriticalcAFalseCACert.crt",
1157fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1158fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1159fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1160fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1161fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsNotCriticalcAFalseCACRL.crl",
1162fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1163fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1164fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1165fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1166fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1167fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.4 */
1168fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidbasicConstraintsNotCriticalTest4() throws Exception {
1169fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1170fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1171fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1172fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidbasicConstraintsNotCriticalTest4EE.crt",
1173fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsNotCriticalCACert.crt",
1174fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1175fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1176fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1177fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1178fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "basicConstraintsNotCriticalCACRL.crl",
1179fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1180fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1181fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1182fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1183fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1184fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.5 */
1185fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest5() throws Exception {
1186fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1187fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1188fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1189fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest5EE.crt",
1190fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCACert.crt",
1191fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1192fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1193fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1194fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1195fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1196fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1197fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCACRL.crl",
1198fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1199fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1200fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1201fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1202fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1203fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.6 */
1204fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest6() throws Exception {
1205fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1206fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1207fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1208fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest6EE.crt",
1209fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCACert.crt",
1210fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1211fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1212fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1213fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1214fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1215fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1216fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCACRL.crl",
1217fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1218fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1219fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1220fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1221fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1222fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.7 */
1223fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidpathLenConstraintTest7() throws Exception {
1224fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1225fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1226fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1227fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidpathLenConstraintTest7EE.crt",
1228fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1229fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1230fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1231fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1232fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1233fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1234fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1235fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1236fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1237fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1238fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1239fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.8 */
1240fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidpathLenConstraintTest8() throws Exception {
1241fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1242fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1243fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1244fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidpathLenConstraintTest8EE.crt",
1245fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1246fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1247fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1248fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1249fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1250fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1251fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1252fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1253fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1254fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1255fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1256fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.9 */
1257fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest9() throws Exception {
1258fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1259fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1260fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1261fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest9EE.crt",
1262fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA00Cert.crt",
1263fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA0Cert.crt",
1264fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1265fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1266fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1267fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1268fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1269fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1270fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA0CRL.crl",
1271fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA00CRL.crl",
1272fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1273fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1274fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1275fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1276fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1277fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.10 */
1278fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest10() throws Exception {
1279fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1280fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1281fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1282fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest10EE.crt",
1283fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA00Cert.crt",
1284fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA0Cert.crt",
1285fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1286fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1287fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1288fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1289fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1290fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1291fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA0CRL.crl",
1292fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA00CRL.crl",
1293fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1294fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1295fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1296fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1297fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1298fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.11 */
1299fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest11() throws Exception {
1300fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1301fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1302fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1303fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest11EE.crt",
1304fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA11XCert.crt",
1305fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA11Cert.crt",
1306fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA1Cert.crt",
1307fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1308fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1309fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1310fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1311fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1312fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1313fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA1CRL.crl",
1314fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA11CRL.crl",
1315fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA11XCRL.crl",
1316fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1317fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1318fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1319fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1320fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1321fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.12 */
1322fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidpathLenConstraintTest12() throws Exception {
1323fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1324fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1325fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1326fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidpathLenConstraintTest12EE.crt",
1327fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA11XCert.crt",
1328fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA11Cert.crt",
1329fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA1Cert.crt",
1330fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1331fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1332fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1333fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1334fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1335fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1336fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA1CRL.crl",
1337fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA11CRL.crl",
1338fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA11XCRL.crl",
1339fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1340fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1341fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1342fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1343fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1344fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.13 */
1345fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidpathLenConstraintTest13() throws Exception {
1346fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1347fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1348fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1349fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidpathLenConstraintTest13EE.crt",
1350fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA41XCert.crt",
1351fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA41Cert.crt",
1352fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA4Cert.crt",
1353fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1354fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1355fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1356fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1357fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1358fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1359fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA4CRL.crl",
1360fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA41CRL.crl",
1361fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA41XCRL.crl",
1362fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1363fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1364fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1365fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1366fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1367fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.14 */
1368fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidpathLenConstraintTest14() throws Exception {
1369fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1370fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1371fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1372fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidpathLenConstraintTest14EE.crt",
1373fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA41XCert.crt",
1374fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA41Cert.crt",
1375fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA4Cert.crt",
1376fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACert.crt",
1377fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1378fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1379fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1380fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1381fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6CACRL.crl",
1382fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subCA4CRL.crl",
1383fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubCA41CRL.crl",
1384fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint6subsubsubCA41XCRL.crl",
1385fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1386fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1387fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1388fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1389fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1390fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.15 */
1391fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidSelfIssuedpathLenConstraintTest15() throws Exception {
1392fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1393fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1394fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1395fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidSelfIssuedpathLenConstraintTest15EE.crt",
1396fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0SelfIssuedCACert.crt",
1397fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1398fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1399fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1400fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1401fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1402fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1403fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1404fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1405fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1406fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1407fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1408fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.16 */
1409fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_InvalidSelfIssuedpathLenConstraintTest16() throws Exception {
1410fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1411fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1412fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1413fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidSelfIssuedpathLenConstraintTest16EE.crt",
1414fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCA2Cert.crt",
1415fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0SelfIssuedCACert.crt",
1416fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACert.crt",
1417fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1418fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1419fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1420fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1421fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0CACRL.crl",
1422fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint0subCA2CRL.crl",
1423fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1424fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1425fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1426fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1427fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1428fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.6.17 */
1429fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testVerifyingBasicConstraints_ValidSelfIssuedpathLenConstraintTest17() throws Exception {
1430fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1431fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1432fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1433fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidSelfIssuedpathLenConstraintTest17EE.crt",
1434fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1SelfIssuedsubCACert.crt",
1435fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1subCACert.crt",
1436fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1SelfIssuedCACert.crt",
1437fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1CACert.crt",
1438fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1439fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1440fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1441fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1442fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1CACRL.crl",
1443fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "pathLenConstraint1subCACRL.crl",
1444fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1445fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1446fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1447fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1448fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1449fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.7.1 */
1450fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidkeyUsageCriticalkeyCertSignFalseTest1() throws Exception {
1451fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1452fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1453fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1454fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidkeyUsageCriticalkeyCertSignFalseTest1EE.crt",
1455fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageCriticalkeyCertSignFalseCACert.crt",
1456fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1457fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1458fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1459fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1460fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageCriticalkeyCertSignFalseCACRL.crl",
1461fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1462fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1463fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1464fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1465fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1466fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.7.2 */
1467fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidkeyUsageNotCriticalkeyCertSignFalseTest2() throws Exception {
1468fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1469fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1470fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1471fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidkeyUsageNotCriticalkeyCertSignFalseTest2EE.crt",
1472fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalkeyCertSignFalseCACert.crt",
1473fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1474fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1475fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1476fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1477fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalkeyCertSignFalseCACRL.crl",
1478fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1479fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1480fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1481fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1482fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1483fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.7.3 */
1484fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidkeyUsageNotCriticalTest3() throws Exception {
1485fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1486fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1487fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1488fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidkeyUsageNotCriticalTest3EE.crt",
1489fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalCACert.crt",
1490fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1491fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1492fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1493fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1494fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalCACRL.crl",
1495fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1496fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1497fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1498fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1499fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1500fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.7.4 */
1501fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidkeyUsageCriticalcRLSignFalseTest4() throws Exception {
1502fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1503fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1504fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1505fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidkeyUsageCriticalcRLSignFalseTest4EE.crt",
1506fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageCriticalcRLSignFalseCACert.crt",
1507fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1508fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1509fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1510fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1511fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageCriticalcRLSignFalseCACRL.crl",
1512fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1513fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1514fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1515fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1516fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1517fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.7.5 */
1518fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidkeyUsageNotCriticalcRLSignFalseTest5() throws Exception {
1519fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1520fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1521fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1522fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidkeyUsageNotCriticalcRLSignFalseTest5EE.crt",
1523fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalcRLSignFalseCACert.crt",
1524fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1525fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1526fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1527fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1528fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "keyUsageNotCriticalcRLSignFalseCACRL.crl",
1529fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1530fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1531fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1532fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1533fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1534fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    // skipping sections 4.8 to 4.12
1535fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1536fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.1 */
1537fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest1() throws Exception {
1538fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1539fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1540fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1541fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest1EE.crt",
1542fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1543fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1544fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1545fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1546fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1547fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1548fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1549fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1550fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1551fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1552fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1553fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.2 */
1554fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest2() throws Exception {
1555fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1556fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1557fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1558fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest2EE.crt",
1559fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1560fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1561fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1562fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1563fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1564fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1565fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1566fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1567fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1568fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1569fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1570fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.3 */
1571fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest3() throws Exception {
1572fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1573fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1574fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1575fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest3EE.crt",
1576fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1577fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1578fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1579fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1580fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1581fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1582fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1583fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1584fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1585fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1586fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1587fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.4 */
1588fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest4() throws Exception {
1589fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1590fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1591fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1592fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest4EE.crt",
1593fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1594fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1595fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1596fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1597fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1598fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1599fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1600fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1601fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1602fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1603fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1604fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.5 */
1605fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest5() throws Exception {
1606fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1607fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1608fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1609fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest5EE.crt",
1610fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN2CACert.crt",
1611fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1612fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1613fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1614fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1615fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN2CACRL.crl",
1616fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1617fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1618fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1619fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1620fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1621fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.6 */
1622fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest6() throws Exception {
1623fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1624fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1625fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1626fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest6EE.crt",
1627fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1628fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1629fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1630fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1631fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1632fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1633fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1634fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1635fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1636fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1637fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1638fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.7 */
1639fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest7() throws Exception {
1640fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1641fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1642fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1643fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest7EE.crt",
1644fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1645fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1646fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1647fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1648fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1649fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1650fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1651fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1652fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1653fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1654fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1655fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.8 */
1656fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest8() throws Exception {
1657fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1658fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1659fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1660fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest8EE.crt",
1661fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN4CACert.crt",
1662fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1663fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1664fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1665fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1666fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN4CACRL.crl",
1667fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1668fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1669fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1670fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1671fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1672fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.9 */
1673fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest9() throws Exception {
1674fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1675fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1676fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1677fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest9EE.crt",
1678fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN4CACert.crt",
1679fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1680fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1681fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1682fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1683fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN4CACRL.crl",
1684fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1685fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1686fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1687fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1688fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1689fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.10 */
1690fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest10() throws Exception {
1691fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1692fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1693fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1694fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest10EE.crt",
1695fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN5CACert.crt",
1696fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1697fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1698fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1699fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1700fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN5CACRL.crl",
1701fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1702fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1703fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1704fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1705fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1706fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.11 */
1707fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest11() throws Exception {
1708fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1709fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1710fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1711fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest11EE.crt",
1712fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN5CACert.crt",
1713fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1714fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1715fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1716fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1717fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN5CACRL.crl",
1718fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1719fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1720fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1721fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1722fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1723fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.12 */
1724fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest12() throws Exception {
1725fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1726fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1727fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1728fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest12EE.crt",
1729fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA1Cert.crt",
1730fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1731fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1732fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1733fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1734fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1735fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1736fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA1CRL.crl",
1737fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1738fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1739fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1740fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1741fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1742fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.13 */
1743fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest13() throws Exception {
1744fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1745fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1746fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1747fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest13EE.crt",
1748fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA2Cert.crt",
1749fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1750fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1751fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1752fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1753fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1754fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1755fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA2CRL.crl",
1756fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1757fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1758fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1759fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1760fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1761fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.14 */
1762fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest14() throws Exception {
1763fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1764fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1765fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1766fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest14EE.crt",
1767fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA2Cert.crt",
1768fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1769fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1770fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1771fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1772fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1773fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1774fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA2CRL.crl",
1775fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1776fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1777fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1778fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1779fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1780fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.15 */
1781fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest15() throws Exception {
1782fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1783fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1784fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1785fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest15EE.crt",
1786fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA1Cert.crt",
1787fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1788fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1789fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1790fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1791fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1792fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1793fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA1CRL.crl",
1794fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1795fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1796fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1797fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1798fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1799fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.16 */
1800fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest16() throws Exception {
1801fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1802fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1803fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1804fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest16EE.crt",
1805fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA1Cert.crt",
1806fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1807fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1808fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1809fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1810fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1811fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1812fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA1CRL.crl",
1813fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1814fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1815fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1816fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1817fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1818fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.17 */
1819fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNnameConstraintsTest17() throws Exception {
1820fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1821fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1822fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1823fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest17EE.crt",
1824fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA2Cert.crt",
1825fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1826fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1827fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1828fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1829fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1830fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1831fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA2CRL.crl",
1832fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1833fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1834fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1835fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1836fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1837fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.18 */
1838fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNnameConstraintsTest18() throws Exception {
1839fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1840fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1841fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1842fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest18EE.crt",
1843fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA2Cert.crt",
1844fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACert.crt",
1845fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1846fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1847fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1848fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1849fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3CACRL.crl",
1850fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN3subCA2CRL.crl",
1851fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1852fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1853fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1854fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1855fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1856fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.19 */
1857fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidSelfIssuedDNnameConstraintsTest19() throws Exception {
1858fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1859fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1860fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1861fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNnameConstraintsTest19EE.crt",
1862fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1SelfIssuedCACert.crt",
1863fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1864fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1865fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1866fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1867fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1868fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1869fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1870fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1871fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1872fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1873fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1874fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.20 */
1875fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidSelfIssuedDNnameConstraintsTest20() throws Exception {
1876fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1877fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1878fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1879fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNnameConstraintsTest20EE.crt",
1880fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
1881fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1882fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1883fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1884fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1885fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
1886fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1887fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1888fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1889fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1890fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1891fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.21 */
1892fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidRFC822nameConstraintsTest21() throws Exception {
1893fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1894fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1895fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1896fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRFC822nameConstraintsTest21EE.crt",
1897fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA1Cert.crt",
1898fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1899fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1900fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1901fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1902fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA1CRL.crl",
1903fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1904fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1905fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1906fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1907fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1908fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.22 */
1909fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidRFC822nameConstraintsTest22() throws Exception {
1910fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1911fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1912fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1913fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidRFC822nameConstraintsTest22EE.crt",
1914fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA1Cert.crt",
1915fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1916fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1917fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1918fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1919fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA1CRL.crl",
1920fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1921fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1922fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1923fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1924fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1925fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.23 */
1926fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidRFC822nameConstraintsTest23() throws Exception {
1927fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1928fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1929fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1930fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRFC822nameConstraintsTest23EE.crt",
1931fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA2Cert.crt",
1932fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1933fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1934fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1935fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1936fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA2CRL.crl",
1937fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1938fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1939fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1940fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1941fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1942fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.24 */
1943fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidRFC822nameConstraintsTest24() throws Exception {
1944fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1945fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1946fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1947fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidRFC822nameConstraintsTest24EE.crt",
1948fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA2Cert.crt",
1949fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1950fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1951fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1952fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1953fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA2CRL.crl",
1954fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1955fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1956fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1957fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1958fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1959fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.25 */
1960fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidRFC822nameConstraintsTest25() throws Exception {
1961fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1962fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1963fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1964fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidRFC822nameConstraintsTest25EE.crt",
1965fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA3Cert.crt",
1966fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1967fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1968fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1969fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1970fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA3CRL.crl",
1971fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1972fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1973fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
1974fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1975fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1976fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.26 */
1977fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidRFC822nameConstraintsTest26() throws Exception {
1978fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1979fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1980fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1981fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidRFC822nameConstraintsTest26EE.crt",
1982fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA3Cert.crt",
1983fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1984fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1985fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
1986fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
1987fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsRFC822CA3CRL.crl",
1988fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
1989fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1990fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
1991fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
1992fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1993fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.27 */
1994fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNandRFC822nameConstraintsTest27() throws Exception {
1995fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
1996fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
1997fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
1998fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNandRFC822nameConstraintsTest27EE.crt",
1999fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3Cert.crt",
2000fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
2001fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2002fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2003fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2004fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2005fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
2006fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3CRL.crl",
2007fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2008fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2009fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2010fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2011fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2012fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.28 */
2013fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNandRFC822nameConstraintsTest28() throws Exception {
2014fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2015fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2016fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2017fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNandRFC822nameConstraintsTest28EE.crt",
2018fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3Cert.crt",
2019fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
2020fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2021fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2022fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2023fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2024fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
2025fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3CRL.crl",
2026fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2027fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2028fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2029fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2030fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2031fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.29 */
2032fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNandRFC822nameConstraintsTest29() throws Exception {
2033fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2034fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2035fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2036fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNandRFC822nameConstraintsTest29EE.crt",
2037fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3Cert.crt",
2038fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACert.crt",
2039fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2040fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2041fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2042fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2043fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1CACRL.crl",
2044fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDN1subCA3CRL.crl",
2045fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2046fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2047fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2048fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2049fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2050fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.30 */
2051fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNSnameConstraintsTest30() throws Exception {
2052fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2053fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2054fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2055fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNSnameConstraintsTest30EE.crt",
2056fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACert.crt",
2057fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2058fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2059fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2060fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2061fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACRL.crl",
2062fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2063fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2064fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2065fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2066fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2067fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.31 */
2068fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNSnameConstraintsTest31() throws Exception {
2069fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2070fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2071fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2072fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNSnameConstraintsTest31EE.crt",
2073fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACert.crt",
2074fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2075fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2076fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2077fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2078fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACRL.crl",
2079fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2080fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2081fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2082fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2083fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2084fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.32 */
2085fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidDNSnameConstraintsTest32() throws Exception {
2086fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2087fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2088fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2089fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidDNSnameConstraintsTest32EE.crt",
2090fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS2CACert.crt",
2091fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2092fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2093fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2094fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2095fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS2CACRL.crl",
2096fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2097fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2098fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2099fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2100fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2101fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.33 */
2102fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNSnameConstraintsTest33() throws Exception {
2103fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2104fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2105fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2106fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNSnameConstraintsTest33EE.crt",
2107fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS2CACert.crt",
2108fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2109fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2110fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2111fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2112fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS2CACRL.crl",
2113fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2114fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2115fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2116fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2117fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2118fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.34 */
2119fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidURInameConstraintsTest34() throws Exception {
2120fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2121fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2122fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2123fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidURInameConstraintsTest34EE.crt",
2124fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI1CACert.crt",
2125fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2126fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2127fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2128fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2129fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI1CACRL.crl",
2130fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2131fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2132fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2133fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2134fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2135fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.35 */
2136fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidURInameConstraintsTest35() throws Exception {
2137fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2138fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2139fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2140fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidURInameConstraintsTest35EE.crt",
2141fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI1CACert.crt",
2142fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2143fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2144fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2145fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2146fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI1CACRL.crl",
2147fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2148fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2149fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2150fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2151fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2152fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.36 */
2153fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_ValidURInameConstraintsTest36() throws Exception {
2154fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2155fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2156fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2157fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidURInameConstraintsTest36EE.crt",
2158fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI2CACert.crt",
2159fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2160fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2161fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2162fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2163fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI2CACRL.crl",
2164fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2165fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2166fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2167fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2168fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2169fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.37 */
2170fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidURInameConstraintsTest37() throws Exception {
2171fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2172fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2173fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2174fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidURInameConstraintsTest37EE.crt",
2175fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI2CACert.crt",
2176fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2177fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2178fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2179fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2180fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsURI2CACRL.crl",
2181fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2182fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2183fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2184fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2185fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2186fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.13.38 */
2187fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testKeyUsage_InvalidDNSnameConstraintsTest38() throws Exception {
2188fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2189fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2190fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2191fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidDNSnameConstraintsTest38EE.crt",
2192fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACert.crt",
2193fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2194fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2195fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2196fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2197fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "nameConstraintsDNS1CACRL.crl",
2198fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2199fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2200fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2201fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2202fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2203fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.1 */
2204fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValiddistributionPointTest1() throws Exception {
2205fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2206fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2207fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2208fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddistributionPointTest1EE.crt",
2209fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACert.crt",
2210fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2211fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2212fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2213fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2214fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACRL.crl",
2215fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2216fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2217fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2218fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2219fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2220fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.2 */
2221fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvaliddistributionPointTest2() throws Exception {
2222fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2223fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2224fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2225fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddistributionPointTest2EE.crt",
2226fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACert.crt",
2227fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2228fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2229fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2230fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2231fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACRL.crl",
2232fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2233fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2234fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2235fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2236fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2237fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.3 */
2238fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvaliddistributionPointTest3() throws Exception {
2239fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2240fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2241fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2242fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddistributionPointTest3EE.crt",
2243fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACert.crt",
2244fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2245fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2246fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2247fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2248fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACRL.crl",
2249fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2250fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2251fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2252fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2253fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2254fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.4 */
2255fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValiddistributionPointTest4() throws Exception {
2256fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2257fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2258fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2259fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddistributionPointTest4EE.crt",
2260fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACert.crt",
2261fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2262fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2263fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2264fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2265fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint1CACRL.crl",
2266fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2267fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2268fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2269fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2270fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2271fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.5 */
2272fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValiddistributionPointTest5() throws Exception {
2273fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2274fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2275fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2276fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddistributionPointTest5EE.crt",
2277fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACert.crt",
2278fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2279fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2280fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2281fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2282fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACRL.crl",
2283fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2284fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2285fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2286fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2287fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2288fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.6 */
2289fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvaliddistributionPointTest6() throws Exception {
2290fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2291fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2292fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2293fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddistributionPointTest6EE.crt",
2294fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACert.crt",
2295fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2296fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2297fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2298fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2299fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACRL.crl",
2300fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2301fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2302fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2303fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2304fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2305fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.7 */
2306fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValiddistributionPointTest7() throws Exception {
2307fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2308fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2309fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2310fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddistributionPointTest7EE.crt",
2311fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACert.crt",
2312fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2313fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2314fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2315fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2316fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACRL.crl",
2317fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2318fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2319fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2320fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2321fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2322fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.8 */
2323fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvaliddistributionPointTest8() throws Exception {
2324fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2325fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2326fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2327fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddistributionPointTest8EE.crt",
2328fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACert.crt",
2329fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2330fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2331fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2332fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2333fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACRL.crl",
2334fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2335fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2336fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2337fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2338fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2339fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.9 */
2340fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvaliddistributionPointTest9() throws Exception {
2341fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2342fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2343fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2344fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddistributionPointTest9EE.crt",
2345fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACert.crt",
2346fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2347fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2348fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2349fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2350fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "distributionPoint2CACRL.crl",
2351fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2352fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2353fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2354fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2355fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2356fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.10 */
2357fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidNoissuingDistributionPointTest10() throws Exception {
2358fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2359fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2360fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2361fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidNoissuingDistributionPointTest10EE.crt",
2362fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NoissuingDistributionPointCACert.crt",
2363fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2364fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2365fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2366fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2367fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "NoissuingDistributionPointCACRL.crl",
2368fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2369fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2370fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2371fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2372fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2373fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.11 */
2374fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlyContainsUserCertsCRLTest11() throws Exception {
2375fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2376fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2377fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2378fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlyContainsUserCertsTest11EE.crt",
2379fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsUserCertsCACert.crt",
2380fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2381fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2382fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2383fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2384fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsUserCertsCACRL.crl",
2385fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2386fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2387fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2388fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2389fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2390fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.12 */
2391fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlyContainsCACertsCRLTest12() throws Exception {
2392fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2393fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2394fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2395fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlyContainsCACertsTest12EE.crt",
2396fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsCACertsCACert.crt",
2397fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2398fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2399fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2400fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2401fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsCACertsCACRL.crl",
2402fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2403fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2404fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2405fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2406fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2407fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.13 */
2408fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidonlyContainsCACertsCRLTest13() throws Exception {
2409fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2410fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2411fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2412fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidonlyContainsCACertsTest13EE.crt",
2413fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsCACertsCACert.crt",
2414fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2415fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2416fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2417fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2418fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsCACertsCACRL.crl",
2419fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2420fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2421fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2422fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2423fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2424fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.14 */
2425fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlyContainsAttributeCertsTest14() throws Exception {
2426fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2427fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2428fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2429fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlyContainsAttributeCertsTest14EE.crt",
2430fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsAttributeCertsCACert.crt",
2431fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2432fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2433fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2434fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2435fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlyContainsAttributeCertsCACRL.crl",
2436fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2437fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2438fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2439fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2440fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2441fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.15 */
2442fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlySomeReasonsTest15() throws Exception {
2443fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2444fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2445fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2446fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlySomeReasonsTest15EE.crt",
2447fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1Cert.crt",
2448fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2449fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2450fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2451fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2452fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1compromiseCRL.crl",
2453fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1otherreasonsCRL.crl",
2454fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2455fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2456fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2457fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2458fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2459fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.16 */
2460fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlySomeReasonsTest16() throws Exception {
2461fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2462fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2463fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2464fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlySomeReasonsTest16EE.crt",
2465fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1Cert.crt",
2466fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2467fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2468fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2469fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2470fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1compromiseCRL.crl",
2471fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA1otherreasonsCRL.crl",
2472fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2473fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2474fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2475fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2476fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2477fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.17 */
2478fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlySomeReasonsTest17() throws Exception {
2479fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2480fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2481fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2482fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlySomeReasonsTest17EE.crt",
2483fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA2Cert.crt",
2484fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2485fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2486fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2487fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2488fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA2CRL1.crl",
2489fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA2CRL2.crl",
2490fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2491fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2492fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2493fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2494fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2495fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.18 */
2496fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidonlySomeReasonsTest18() throws Exception {
2497fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2498fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2499fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2500fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidonlySomeReasonsTest18EE.crt",
2501fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA3Cert.crt",
2502fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2503fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2504fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2505fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2506fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA3compromiseCRL.crl",
2507fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA3otherreasonsCRL.crl",
2508fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2509fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2510fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2511fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2512fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2513fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.19 */
2514fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidonlySomeReasonsTest19() throws Exception {
2515fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2516fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2517fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2518fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidonlySomeReasonsTest19EE.crt",
2519fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4Cert.crt",
2520fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2521fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2522fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2523fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2524fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4compromiseCRL.crl",
2525fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4otherreasonsCRL.crl",
2526fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2527fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2528fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2529fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2530fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2531fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.20 */
2532fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlySomeReasonsTest20() throws Exception {
2533fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2534fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2535fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2536fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlySomeReasonsTest20EE.crt",
2537fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4Cert.crt",
2538fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2539fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2540fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2541fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2542fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4compromiseCRL.crl",
2543fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4otherreasonsCRL.crl",
2544fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2545fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2546fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2547fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2548fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2549fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.21 */
2550fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidonlySomeReasonsTest21() throws Exception {
2551fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2552fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2553fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2554fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidonlySomeReasonsTest21EE.crt",
2555fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4Cert.crt",
2556fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2557fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2558fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2559fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2560fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4compromiseCRL.crl",
2561fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "onlySomeReasonsCA4otherreasonsCRL.crl",
2562fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2563fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2564fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2565fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2566fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2567fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.22 */
2568fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidIDPwithindirectCRLTest22() throws Exception {
2569fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2570fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2571fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2572fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidIDPwithindirectCRLTest22EE.crt",
2573fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1Cert.crt",
2574fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2575fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2576fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2577fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2578fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1CRL.crl",
2579fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2580fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2581fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2582fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2583fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2584fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.23 */
2585fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidIDPwithindirectCRLTest23() throws Exception {
2586fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2587fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2588fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2589fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidIDPwithindirectCRLTest23EE.crt",
2590fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1Cert.crt",
2591fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2592fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2593fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2594fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2595fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1CRL.crl",
2596fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2597fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2598fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2599fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2600fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2601fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.24 */
2602fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidIDPwithindirectCRLTest24() throws Exception {
2603fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2604fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2605fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2606fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidIDPwithindirectCRLTest24EE.crt",
2607fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1Cert.crt",
2608fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA2Cert.crt",
2609fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2610fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2611fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2612fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2613fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1CRL.crl",
2614fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2615fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2616fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2617fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2618fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2619fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.25 */
2620fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidIDPwithindirectCRLTest25() throws Exception {
2621fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2622fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2623fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2624fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidIDPwithindirectCRLTest25EE.crt",
2625fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1Cert.crt",
2626fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA2Cert.crt",
2627fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2628fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2629fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2630fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2631fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1CRL.crl",
2632fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2633fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2634fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2635fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2636fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2637fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.26 */
2638fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidIDPwithindirectCRLTest26() throws Exception {
2639fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2640fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2641fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2642fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidIDPwithindirectCRLTest26EE.crt",
2643fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1Cert.crt",
2644fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA2Cert.crt",
2645fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2646fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2647fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2648fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2649fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA1CRL.crl",
2650fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2651fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2652fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2653fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2654fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2655fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.27 */
2656fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidcRLIssuerTest27() throws Exception {
2657fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2658fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2659fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2660fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcRLIssuerTest27EE.crt",
2661fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACert.crt",
2662fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA2Cert.crt",
2663fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2664fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2665fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2666fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2667fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "GoodCACRL.crl",
2668fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2669fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2670fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2671fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2672fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2673fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.28 */
2674fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidcRLIssuerTest28() throws Exception {
2675fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2676fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2677fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2678fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidcRLIssuerTest28EE.crt",
2679fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3cRLIssuerCert.crt",
2680fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3Cert.crt",
2681fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2682fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2683fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2684fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2685fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3CRL.crl",
2686fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3cRLIssuerCRL.crl",
2687fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2688fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2689fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2690fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2691fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2692fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.29 */
2693fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidcRLIssuerTest29() throws Exception {
2694fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2695fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2696fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2697fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidcRLIssuerTest29EE.crt",
2698fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3cRLIssuerCert.crt",
2699fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3Cert.crt",
2700fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2701fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2702fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2703fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2704fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3CRL.crl",
2705fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA3cRLIssuerCRL.crl",
2706fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2707fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2708fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2709fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2710fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2711fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.30 */
2712fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidcRLIssuerTest30() throws Exception {
2713fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2714fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2715fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2716fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidcRLIssuerTest30EE.crt",
2717fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA4cRLIssuerCert.crt",
2718fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA4Cert.crt",
2719fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2720fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2721fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2722fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2723fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA4cRLIssuerCRL.crl",
2724fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2725fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2726fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2727fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2728fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2729fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.31 */
2730fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidcRLIssuerTest31() throws Exception {
2731fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2732fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2733fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2734fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcRLIssuerTest31EE.crt",
2735fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA6Cert.crt",
2736fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5Cert.crt",
2737fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2738fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2739fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2740fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2741fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5CRL.crl",
2742fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2743fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2744fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2745fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2746fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2747fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.32 */
2748fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidcRLIssuerTest32() throws Exception {
2749fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2750fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2751fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2752fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcRLIssuerTest32EE.crt",
2753fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA6Cert.crt",
2754fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5Cert.crt",
2755fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2756fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2757fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2758fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2759fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5CRL.crl",
2760fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2761fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2762fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2763fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2764fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2765fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.33 */
2766fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_ValidcRLIssuerTest33() throws Exception {
2767fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2768fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2769fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2770fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidcRLIssuerTest33EE.crt",
2771fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA6Cert.crt",
2772fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5Cert.crt",
2773fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2774fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2775fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2776fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2777fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5CRL.crl",
2778fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2779fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2780fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2781fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2782fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2783fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.34 */
2784fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidcRLIssuerTest34() throws Exception {
2785fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2786fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2787fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2788fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcRLIssuerTest34EE.crt",
2789fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5Cert.crt",
2790fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2791fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2792fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2793fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2794fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5CRL.crl",
2795fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2796fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2797fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2798fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2799fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2800fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.14.35 */
2801fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDistributionPoints_InvalidcRLIssuerTest35() throws Exception {
2802fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2803fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2804fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2805fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvalidcRLIssuerTest35EE.crt",
2806fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5Cert.crt",
2807fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2808fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2809fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2810fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2811fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "indirectCRLCA5CRL.crl",
2812fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2813fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2814fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2815fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2816fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2817fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.1 */
2818fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLIndicatorNoBaseTest1() throws Exception {
2819fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2820fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2821fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2822fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLIndicatorNoBaseTest1EE.crt",
2823fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLIndicatorNoBaseCACert.crt",
2824fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2825fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2826fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2827fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2828fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLIndicatorNoBaseCACRL.crl",
2829fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2830fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2831fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2832fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2833fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2834fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.2 */
2835fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_ValiddeltaCRLTest2() throws Exception {
2836fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2837fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2838fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2839fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddeltaCRLTest2EE.crt",
2840fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2841fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2842fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2843fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2844fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2845fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2846fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2847fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2848fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2849fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2850fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2851fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2852fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.3 */
2853fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLTest3() throws Exception {
2854fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2855fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2856fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2857fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLTest3EE.crt",
2858fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2859fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2860fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2861fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2862fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2863fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2864fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2865fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2866fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2867fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2868fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2869fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2870fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.4 */
2871fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLTest4() throws Exception {
2872fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2873fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2874fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2875fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLTest4EE.crt",
2876fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2877fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2878fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2879fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2880fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2881fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2882fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2883fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2884fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2885fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2886fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2887fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2888fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.5 */
2889fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_ValiddeltaCRLTest5() throws Exception {
2890fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2891fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2892fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2893fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddeltaCRLTest5EE.crt",
2894fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2895fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2896fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2897fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2898fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2899fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2900fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2901fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2902fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2903fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2904fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2905fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2906fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.6 */
2907fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLTest6() throws Exception {
2908fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2909fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2910fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2911fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLTest6EE.crt",
2912fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2913fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2914fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2915fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2916fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2917fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2918fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2919fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2920fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2921fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2922fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2923fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2924fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.7 */
2925fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_ValiddeltaCRLTest7() throws Exception {
2926fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2927fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2928fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2929fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddeltaCRLTest7EE.crt",
2930fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1Cert.crt",
2931fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2932fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2933fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2934fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2935fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1CRL.crl",
2936fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA1deltaCRL.crl",
2937fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2938fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2939fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2940fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2941fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2942fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.8 */
2943fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_ValiddeltaCRLTest8() throws Exception {
2944fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2945fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2946fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2947fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValiddeltaCRLTest8EE.crt",
2948fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2Cert.crt",
2949fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2950fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2951fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2952fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2953fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2CRL.crl",
2954fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2deltaCRL.crl",
2955fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2956fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2957fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
2958fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2959fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2960fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.9 */
2961fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLTest9() throws Exception {
2962fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2963fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2964fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2965fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLTest9EE.crt",
2966fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2Cert.crt",
2967fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2968fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2969fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2970fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2971fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2CRL.crl",
2972fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA2deltaCRL.crl",
2973fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2974fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2975fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2976fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2977fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2978fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.15.10 */
2979fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testDeltaCRLs_InvaliddeltaCRLTest10() throws Exception {
2980fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2981fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2982fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
2983fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "InvaliddeltaCRLTest10EE.crt",
2984fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA3Cert.crt",
2985fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2986fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2987fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
2988fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
2989fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA3CRL.crl",
2990fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "deltaCRLCA3deltaCRL.crl",
2991fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
2992fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2993fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertInvalidPath(trustAnchor, certs, crls);
2994fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
2995fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
2996fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /** NIST PKITS test 4.16.1 */
2997fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    public void testPrivateCertificateExtensions_ValidUnknownNotCriticalCertificateExtensionTest1() throws Exception {
2998fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String trustAnchor = "TrustAnchorRootCertificate.crt";
2999fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
3000fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] certs = {
3001fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "ValidUnknownNotCriticalCertificateExtensionTest1EE.crt",
3002fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
3003fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
3004fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        String[] crls = {
3005fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root                "TrustAnchorRootCRL.crl",
3006fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        };
3007fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
3008fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root        assertValidPath(trustAnchor, certs, crls);
3009fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    }
3010fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root
3011fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root    /* DO NOT MANUALLY EDIT -- END AUTOMATICALLY GENERATED TESTS */
3012fa3861dfdf1531ce20a694477408af47bb44a754Kenny Root}
3013