Now that SHA1 has been banned from security level 1 in #10786 it is time to consider the places where SHA1 is still used as default digest. The following list was simply collected by skimming through the documentation. It might not be complete and it might not be accurate.
~/src/openssl$ git grep -nE -C 1 'SHA-?1' doc/ | grep default
|
Digest algorithm to use when signing or resigning. If not present then the |
|
default digest algorithm for the signing key will be used (usually SHA1). |
|
This option sets digest algorithm to use for certificate identification in the |
|
OCSP request. Any digest supported by the OpenSSL B<dgst> command can be used. |
|
The default is SHA-1. This option may be used multiple times to specify the |
|
digest used by subsequent certificate identifiers. |
|
The B<-keypbe> and B<-certpbe> algorithms allow the precise encryption |
|
algorithms for private keys and certificates to be specified. Normally |
|
the defaults are fine but occasionally software can't handle triple DES |
|
encrypted private keys, then the option B<-keypbe> I<PBE-SHA1-RC2-40> can |
|
be used to reduce the private key encryption to 40 bit RC2. A complete |
|
description of all algorithms is contained in L<openssl-pkcs8(1)>. |
|
The DSA algorithm supports signing and verification operations only. Currently |
|
there are no additional B<-pkeyopt> options other than B<digest>. The SHA1 |
|
digest is assumed by default. |
|
The EC algorithm supports sign, verify and derive operations. The sign and |
|
verify operations use ECDSA and derive uses ECDH. SHA1 is assumed by default for |
|
the B<-pkeyopt> B<digest> option. |
|
Digest algorithm to use when signing or resigning. If not present then the |
|
default digest algorithm for the signing key will be used (usually SHA1). |
|
Any digest supported by the L<openssl-dgst(1)> command can be used. |
|
If not specified then SHA1 is used with B<-fingerprint> or |
|
the default digest for the signing algorithm is used, typically SHA256. |
|
If a signer is specified it will use the default digest for the signing |
|
algorithm. This is B<SHA1> for both RSA and DSA keys. |
|
If a signer is specified it will use the default digest for the signing |
|
algorithm. This is B<SHA1> for both RSA and DSA keys. |
(This SHA1 grep hit in openssl-pkcs12 is of a different nature, but I included it here for completeness.)
Now that SHA1 has been banned from security level 1 in #10786 it is time to consider the places where SHA1 is still used as default digest. The following list was simply collected by skimming through the documentation. It might not be complete and it might not be accurate.
~/src/openssl$ git grep -nE -C 1 'SHA-?1' doc/ | grep default
openssl/doc/man1/openssl-cms.pod.in
Lines 289 to 290 in f11f86f
openssl/doc/man1/openssl-ocsp.pod.in
Lines 268 to 271 in f11f86f
openssl/doc/man1/openssl-pkcs12.pod.in
Lines 315 to 320 in f11f86f
openssl/doc/man1/openssl-pkeyutl.pod.in
Lines 286 to 288 in f11f86f
openssl/doc/man1/openssl-pkeyutl.pod.in
Lines 297 to 299 in f11f86f
openssl/doc/man1/openssl-smime.pod.in
Lines 164 to 165 in f11f86f
openssl/doc/man1/openssl-x509.pod.in
Lines 124 to 126 in f11f86f
openssl/doc/man3/CMS_sign.pod
Lines 88 to 89 in f11f86f
openssl/doc/man3/PKCS7_sign.pod
Lines 76 to 77 in f11f86f
(This SHA1 grep hit in openssl-pkcs12 is of a different nature, but I included it here for completeness.)