Skip to main content

Certificate Transparency search

Project description

Certificate Search

Build Status codecov.io

An unofficial wrapper to query crt.sh.

Installation

The package can be installed from PyPI

pip install certificate-search

Usage

import json

from cryptography.x509.oid import NameOID, ExtensionOID
from cryptography.x509.general_name import DNSName

from crt.search import CertificateSearch, SUPPORTED_SITES

# Print the list of all supported sites
print(json.dumps(SUPPORTED_SITES))

engines = CertificateSearch()

domains = [
    'github.com',
    'facebook.com',
]

for domain in domains:
    for cert in engine.search(domain=domain):
        not_before = cert.not_before
        not_after = cert.not_after

        pem = cert.pem
        # An x509 certificate
        common_name = pem.subject.get_attributes_for_oid(NameOID.COMMON_NAME)[0].value
        country_name = pem.subject.get_attributes_for_oid(NameOID.COUNTRY_NAME)[0].value
        organization_name = pem.subject.get_attributes_for_oid(NameOID.ORGANIZATION_NAME)[0].value

        # All SAN records
        san = pem.extensions.get_extension_for_oid(ExtensionOID.SUBJECT_ALTERNATIVE_NAME)
        san_names = san.value.get_values_for_type(DNSName)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
certificate_search-0.3-py2.py3-none-any.whl (4.7 kB) Copy SHA256 hash SHA256 Wheel py2.py3
certificate-search-0.3.tar.gz (4.1 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page