x509certificatepairtest.java

来自「kmlnjlkj nlkjlkjkljl okopokipoipo oipipi」· Java 代码 · 共 148 行

JAVA
148
字号
package org.bouncycastle.jce.provider.test;import org.bouncycastle.jce.provider.BouncyCastleProvider;import org.bouncycastle.util.test.SimpleTest;import org.bouncycastle.x509.X509CertificatePair;import java.io.ByteArrayInputStream;import java.security.Security;import java.security.cert.CertificateEncodingException;import java.security.cert.CertificateFactory;import java.security.cert.X509Certificate;public class X509CertificatePairTest    extends SimpleTest{    public void performTest()        throws Exception    {        CertificateFactory cf = CertificateFactory.getInstance("X.509", "BC");        X509Certificate rootCert = (X509Certificate)cf.generateCertificate(                                        new ByteArrayInputStream(CertPathTest.rootCertBin));        X509Certificate interCert = (X509Certificate)cf.generateCertificate(                                         new ByteArrayInputStream(CertPathTest.interCertBin));        X509Certificate finalCert = (X509Certificate)cf.generateCertificate(                                          new ByteArrayInputStream(CertPathTest.finalCertBin));        X509CertificatePair pair1 = new X509CertificatePair(rootCert, interCert);        X509CertificatePair pair2 = new X509CertificatePair(rootCert, interCert);        X509CertificatePair pair3 = new X509CertificatePair(interCert, finalCert);        X509CertificatePair pair4 = new X509CertificatePair(rootCert, finalCert);        X509CertificatePair pair5 = new X509CertificatePair(rootCert, null);        X509CertificatePair pair6 = new X509CertificatePair(rootCert, null);        X509CertificatePair pair7 = new X509CertificatePair(null, rootCert);        X509CertificatePair pair8 = new X509CertificatePair(null, rootCert);        if (!pair1.equals(pair2))        {            fail("pair1 pair2 equality test");        }        if (!pair5.equals(pair6))        {            fail("pair1 pair2 equality test");        }        if (!pair7.equals(pair8))        {            fail("pair1 pair2 equality test");        }        if (pair1.equals(null))        {            fail("pair1 null equality test");        }        if (pair1.hashCode() != pair2.hashCode())        {            fail("pair1 pair2 hashCode equality test");        }        if (pair1.equals(pair3))        {            fail("pair1 pair3 inequality test");        }        if (pair1.equals(pair4))        {            fail("pair1 pair4 inequality test");        }        if (pair1.equals(pair5))        {            fail("pair1 pair5 inequality test");        }        if (pair1.equals(pair7))        {            fail("pair1 pair7 inequality test");        }        if (pair5.equals(pair1))        {            fail("pair5 pair1 inequality test");        }        if (pair7.equals(pair1))        {            fail("pair7 pair1 inequality test");        }        if (pair1.getForward() != rootCert)        {            fail("pair1 forward test");        }        if (pair1.getReverse() != interCert)        {            fail("pair1 reverse test");        }        if (!areEqual(pair1.getEncoded(), pair2.getEncoded()))        {            fail("encoding check");        }        pair4 = new X509CertificatePair(rootCert, TestUtils.createExceptionCertificate(false));        try        {            pair4.getEncoded();            fail("no exception on bad getEncoded()");        }        catch (CertificateEncodingException e)        {            // expected        }        pair4 = new X509CertificatePair(rootCert, TestUtils.createExceptionCertificate(true));        try        {            pair4.getEncoded();            fail("no exception on exception getEncoded()");        }        catch (CertificateEncodingException e)        {            // expected        }    }    public String getName()    {        return "X509CertificatePair";    }    public static void main(String[] args)    {        Security.addProvider(new BouncyCastleProvider());        runTest(new X509CertificatePairTest());    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?