A lot more functionality can be included by using a connection to the crt.sh database with PostgreSQL. Only some filters are exposed through the web interface.
certwatch=> SELECT ci.ISSUER_CA_ID,
ca.NAME ISSUER_NAME,
ci.NAME_VALUE NAME_VALUE,
min(c.ID) MIN_CERT_ID,
min(ctle.ENTRY_TIMESTAMP) MIN_ENTRY_TIMESTAMP,
x509_notBefore(c.CERTIFICATE) NOT_BEFORE,
x509_notAfter(c.CERTIFICATE) NOT_AFTER
FROM ca,
ct_log_entry ctle,
certificate_identity ci,
certificate c
WHERE ci.ISSUER_CA_ID = ca.ID
AND c.ID = ctle.CERTIFICATE_ID
AND reverse(lower(ci.NAME_VALUE)) LIKE reverse(lower('%.github.com'))
AND ci.CERTIFICATE_ID = c.ID
AND x509_notAfter(c.CERTIFICATE) > statement_timestamp()
GROUP BY c.ID, ci.ISSUER_CA_ID, ISSUER_NAME, NAME_VALUE
ORDER BY MIN_ENTRY_TIMESTAMP DESC, NAME_VALUE, ISSUER_NAME;
I have not yet had success executing this command with psycopg2.
psycopg2.DatabaseError: long transactions not allowed
SSL connection has been closed unexpectedly