Ejemplo n.º 1
0
        private void certPairTest()
        {
            X509CertificateParser certParser = new X509CertificateParser();

            X509Certificate rootCert  = certParser.ReadCertificate(CertPathTest.rootCertBin);
            X509Certificate interCert = certParser.ReadCertificate(CertPathTest.interCertBin);
            X509Certificate finalCert = certParser.ReadCertificate(CertPathTest.finalCertBin);

            // Testing CollectionCertStore generation from List
            X509CertificatePair pair1 = new X509CertificatePair(rootCert, interCert);

            IList certList = new ArrayList();

            certList.Add(pair1);
            certList.Add(new X509CertificatePair(interCert, finalCert));

            IX509Store certStore = X509StoreFactory.Create(
                "CertificatePair/Collection",
                new X509CollectionStoreParameters(certList));

            X509CertPairStoreSelector selector   = new X509CertPairStoreSelector();
            X509CertStoreSelector     fwSelector = new X509CertStoreSelector();

            fwSelector.SerialNumber = rootCert.SerialNumber;
            fwSelector.Subject      = rootCert.IssuerDN;

            selector.ForwardSelector = fwSelector;

            IList col = new ArrayList(certStore.GetMatches(selector));

            if (col.Count != 1 || !col.Contains(pair1))
            {
                Fail("failed pair1 test");
            }

            col = new ArrayList(certStore.GetMatches(null));

            if (col.Count != 2)
            {
                Fail("failed null test");
            }
        }
 private X509CertPairStoreSelector(X509CertPairStoreSelector o)
 {
     certPair        = o.CertPair;
     forwardSelector = o.ForwardSelector;
     reverseSelector = o.ReverseSelector;
 }