A substantial number of certificates, requests and keys are known to have been generated using a broken version of OpenSSL distributed by Debian which failed to seed its random number generator correctly. x509 certificates, certificate requests and RSA keys generated using these OpenSSL versions should be assumed to be compromised. This tool may be useful in checking for such OpenSSL x509 certificates, certificate requests and RSA keys.
Certificates, requests and keys that are compromised cannot be repaired; replacements must be generated using openssl(8).
If ``-'' is given as an argument, will read from standard input. This can be used to process certificate output from s_client1ssl, for example:
$ echo | openssl s_client -connect remote.example.org:https | openssl-vulnkey
will test the certificate used by remote.example.org for HTTPS.
The options are as follows:
The fingerprint of the modulus may be generated using
$ openssl x509 -noout -modulus -in file | sha1sum | cut -d ' ' -f 1
$ openssl rsa -noout -modulus -in file | sha1sum | cut -d ' ' -f 1
$ openssl req -noout -modulus -in file | sha1sum | cut -d ' ' -f 1
This strict format is necessary to allow the blacklist file to be checked quickly.
Much of this manpage is based on Colin Watson's ssh-vulnkey1