Metadata-Version: 2.1
Name: certificate-search
Version: 0.1
Summary: Certificate Transparency search
Home-page: https://github.com/huydhn/crt-search
Author: Huy Do
Author-email: huydhn@gmail.com
License: MIT
Description: Certificate Search
        ------------------
        
        [![Build Status](https://travis-ci.org/huydhn/crt-search.svg?branch=master)](https://travis-ci.org/huydhn/crt-search)
        [![codecov.io](https://codecov.io/gh/huydhn/crt-search/master.svg)](http://codecov.io/gh/huydhn/crt-search?branch=master)
        
        An unofficial wrapper to query [crt.sh](https://crt.sh/).
        
        Installation
        ------------
        
        The package can be installed from
        [PyPI](https://pypi.org/project/crt-search)
        
        ```
        pip install crt-search
        ```
        
        Usage
        -----
        
        ```python
        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)
        ```
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
