private static void VerifyCertificates3(byte[] encodedMessage) { EnvelopedCms ecms = new EnvelopedCms(); ecms.Decode(encodedMessage); X509Certificate2Collection certs = ecms.Certificates; Assert.Equal(3, certs.Count); X509Certificate2[] expectedCerts = s_certs.OrderBy(c => c.Issuer).ToArray(); X509Certificate2[] actualCerts = new X509Certificate2[certs.Count]; certs.CopyTo(actualCerts, 0); actualCerts = actualCerts.OrderBy(c => c.Issuer).ToArray(); for (int i = 0; i < certs.Count; i++) { X509Certificate2 expectedCert = expectedCerts[i]; X509Certificate2 actualCert = actualCerts[i]; byte[] expectedDer = expectedCert.Export(X509ContentType.Cert); byte[] actualDer = actualCert.Export(X509ContentType.Cert); Assert.Equal<byte>(expectedDer, actualDer); } }