diff --git a/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_ecc.c b/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_ecc.c index bf320e7c627cea..39d7a998d64e85 100644 --- a/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_ecc.c +++ b/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_ecc.c @@ -24,6 +24,10 @@ int32_t AppleCryptoNative_EccGenerateKey(int32_t keySizeBits, { CFDictionaryAddValue(attributes, kSecAttrKeyType, kSecAttrKeyTypeEC); CFDictionaryAddValue(attributes, kSecAttrKeySizeInBits, cfKeySizeValue); + if (__builtin_available(macOS 10.15, iOS 13, tvOS 13, *)) + { + CFDictionaryAddValue(attributes, kSecUseDataProtectionKeychain, kCFBooleanTrue); + } *pPrivateKey = SecKeyCreateRandomKey(attributes, pErrorOut); if (*pPrivateKey != NULL) diff --git a/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_rsa.c b/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_rsa.c index ba2525ffbfa5c9..a9aece35fb0f59 100644 --- a/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_rsa.c +++ b/src/libraries/Native/Unix/System.Security.Cryptography.Native.Apple/pal_rsa.c @@ -26,6 +26,10 @@ int32_t AppleCryptoNative_RsaGenerateKey(int32_t keySizeBits, { CFDictionaryAddValue(attributes, kSecAttrKeyType, kSecAttrKeyTypeRSA); CFDictionaryAddValue(attributes, kSecAttrKeySizeInBits, cfKeySizeValue); + if (__builtin_available(macOS 10.15, iOS 13, tvOS 13, *)) + { + CFDictionaryAddValue(attributes, kSecUseDataProtectionKeychain, kCFBooleanTrue); + } *pPrivateKey = SecKeyCreateRandomKey(attributes, pErrorOut); if (*pPrivateKey != NULL)