def test_certs(self): ''' Check the objects loaded into RootCertificates() are x509 instances. ''' test_cert = '' \ '-----BEGIN CERTIFICATE-----\n' \ 'MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC\n' \ 'VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ\n' \ 'cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ\n' \ 'BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt\n' \ 'VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D\n' \ '0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9\n' \ 'ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G\n' \ 'A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G\n' \ 'A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs\n' \ 'aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I\n' \ 'flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ==\n' \ '-----END CERTIFICATE-----' test_x509 = load_certificate(FILETYPE_PEM, test_cert) certs = RootCertificates() certs.load_cert(test_cert) cert_x509 = certs.get_certs().pop() test_fingerprint = test_x509.digest('sha1') cert_fingerprint = cert_x509.digest('sha1') self.assert_(test_fingerprint == cert_fingerprint, 'PEM certificate not decoded correctly')
def test_root_certs(self): ''' Check we can load *all* the root certificates into the RootCertificates object. ''' root_certs = RootCertificates() root_certs.load_certs(ROOT_CERTS) certs = root_certs.get_certs() for c,pem in ROOT_CERTS.items(): x509 = load_certificate(FILETYPE_PEM, pem) self.assert_(x509 not in certs, 'x509 object missing from store: %s' % x509)