default provider: include RIPEMD160

Including RIPEMD160 in both the default and legacy providers shouldn't break
anyone and makes the algorithm available more readily.

Fixes #17722

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/19375)
This commit is contained in:
Pauli 2022-10-11 11:23:57 +11:00 committed by Tomas Mraz
parent ce9317a4cf
commit ecd8314699
4 changed files with 16 additions and 12 deletions

View File

@ -19,10 +19,10 @@ SOURCE[../../libcrypto]=rmd_dgst.c rmd_one.c $RMD160ASM
DEFINE[../../libcrypto]=$RMD160DEF DEFINE[../../libcrypto]=$RMD160DEF
# When all deprecated symbols are removed, libcrypto doesn't export the # When all deprecated symbols are removed, libcrypto doesn't export the
# RIPEMD160 functions, so we must include them directly in liblegacy.a # RIPEMD160 functions, so we must include them directly in libcommon.a
IF[{- $disabled{'deprecated-3.0'} -}] IF[{- $disabled{'deprecated-3.0'} -}]
SOURCE[../../providers/liblegacy.a]=rmd_dgst.c rmd_one.c $RMD160ASM SOURCE[../../providers/libcommon.a]=rmd_dgst.c rmd_one.c $RMD160ASM
DEFINE[../../providers/liblegacy.a]=$RMD160DEF DEFINE[../../providers/libcommon.a]=$RMD160DEF
ENDIF ENDIF
GENERATE[rmd-586.S]=asm/rmd-586.pl GENERATE[rmd-586.S]=asm/rmd-586.pl

View File

@ -153,6 +153,10 @@ static const OSSL_ALGORITHM deflt_digests[] = {
{ PROV_NAMES_MD5_SHA1, "provider=default", ossl_md5_sha1_functions }, { PROV_NAMES_MD5_SHA1, "provider=default", ossl_md5_sha1_functions },
#endif /* OPENSSL_NO_MD5 */ #endif /* OPENSSL_NO_MD5 */
#ifndef OPENSSL_NO_RMD160
{ PROV_NAMES_RIPEMD_160, "provider=default", ossl_ripemd160_functions },
#endif /* OPENSSL_NO_RMD160 */
{ PROV_NAMES_NULL, "provider=default", ossl_nullmd_functions }, { PROV_NAMES_NULL, "provider=default", ossl_nullmd_functions },
{ NULL, NULL, NULL } { NULL, NULL, NULL }
}; };

View File

@ -15,7 +15,7 @@ $MD2_GOAL=../../liblegacy.a
$MD4_GOAL=../../liblegacy.a $MD4_GOAL=../../liblegacy.a
$MDC2_GOAL=../../liblegacy.a $MDC2_GOAL=../../liblegacy.a
$WHIRLPOOL_GOAL=../../liblegacy.a $WHIRLPOOL_GOAL=../../liblegacy.a
$RIPEMD_GOAL=../../liblegacy.a $RIPEMD_GOAL=$COMMON_GOAL
# This source is common for all digests in all our providers. # This source is common for all digests in all our providers.
SOURCE[$COMMON_GOAL]=digestcommon.c SOURCE[$COMMON_GOAL]=digestcommon.c

View File

@ -13,42 +13,42 @@
Title = RIPEMD160 tests Title = RIPEMD160 tests
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "" Input = ""
Output = 9c1185a5c5e9fc54612808977ee8f548b2258d31 Output = 9c1185a5c5e9fc54612808977ee8f548b2258d31
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "a" Input = "a"
Output = 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe Output = 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "abc" Input = "abc"
Output = 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc Output = 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "message digest" Input = "message digest"
Output = 5d0689ef49d2fae572b881b123a85ffa21595f36 Output = 5d0689ef49d2fae572b881b123a85ffa21595f36
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "abcdefghijklmnopqrstuvwxyz" Input = "abcdefghijklmnopqrstuvwxyz"
Output = f71c27109c692c1b56bbdceb5b9d2865b3708dbc Output = f71c27109c692c1b56bbdceb5b9d2865b3708dbc
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" Input = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
Output = 12a053384a9c0c88e405a06c27dcf49ada62eb2b Output = 12a053384a9c0c88e405a06c27dcf49ada62eb2b
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
Output = b0e20b6e3116640286ed3a87a5713079b21f5189 Output = b0e20b6e3116640286ed3a87a5713079b21f5189
Availablein = legacy Availablein = legacy default
Digest = RIPEMD160 Digest = RIPEMD160
Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890" Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb Output = 9b752e45573d4b39f4dbd3323cab82bf63326bfb