diff --git a/src/com/amazon/corretto/crypto/provider/AmazonCorrettoCryptoProvider.java b/src/com/amazon/corretto/crypto/provider/AmazonCorrettoCryptoProvider.java index 10daf45f..6d1c812e 100644 --- a/src/com/amazon/corretto/crypto/provider/AmazonCorrettoCryptoProvider.java +++ b/src/com/amazon/corretto/crypto/provider/AmazonCorrettoCryptoProvider.java @@ -95,6 +95,7 @@ private void buildServiceMap() { addService("Cipher", "RSA/ECB/Pkcs1Padding", "RsaCipher$Pkcs1"); addService("Cipher", "RSA/ECB/OAEPPadding", "RsaCipher$OAEP"); addService("Cipher", "RSA/ECB/OAEPWithSHA-1AndMGF1Padding", "RsaCipher$OAEPSha1"); + addService("Cipher", "RSA/ECB/OAEPWithSHA1AndMGF1Padding", "RsaCipher$OAEPSha1"); for (String hash : new String[] {"MD5", "SHA1", "SHA256", "SHA384", "SHA512"}) { addService("Mac", "Hmac" + hash, "EvpHmac$" + hash); diff --git a/tst/com/amazon/corretto/crypto/provider/test/RsaCipherTest.java b/tst/com/amazon/corretto/crypto/provider/test/RsaCipherTest.java index 82248e72..1ade32dd 100644 --- a/tst/com/amazon/corretto/crypto/provider/test/RsaCipherTest.java +++ b/tst/com/amazon/corretto/crypto/provider/test/RsaCipherTest.java @@ -66,6 +66,9 @@ @ResourceLock(value = TestUtil.RESOURCE_GLOBAL, mode = ResourceAccessMode.READ) public class RsaCipherTest { private static final String OAEP_SHA1_PADDING = "RSA/ECB/OAEPWithSHA-1AndMGF1Padding"; + // Aliases are used for compatibility with projects specifying non-JCA-standard names + private static final List OAEP_SHA1_PADDING_ALIASES = + Arrays.asList("RSA/ECB/OAEPWithSHA1AndMGF1Padding"); private static final String OAEP_PADDING = "RSA/ECB/OAEPPadding"; private static final String PKCS1_PADDING = "RSA/ECB/Pkcs1Padding"; private static final String NO_PADDING = "RSA/ECB/NoPadding"; @@ -94,7 +97,12 @@ public class RsaCipherTest { } public static List paddingParams() { - return Arrays.asList(OAEP_PADDING, OAEP_SHA1_PADDING, PKCS1_PADDING, NO_PADDING); + List params = + new ArrayList<>(Arrays.asList(OAEP_PADDING, OAEP_SHA1_PADDING, PKCS1_PADDING, NO_PADDING)); + for (String alias : OAEP_SHA1_PADDING_ALIASES) { + params.add(alias); + } + return params; } public static List messageDigestParams() {