# Deprecated API in Intel® Integrated Performance Primitives Cryptography (Intel® IPP Cryptography) This document describes deprecated API in different Intel IPP Cryptography versions and recommendations for transition. The deprecated API means it is obsolete and will be removed in one of future Intel IPP Cryptography releases. If you have any concerns, please use the following link for opening a ticket and providing feedback: ## 2020 Update1 (branch [ipp-crypto_2020_update1](https://github.com/intel/ipp-crypto/tree/ipp-crypto_2020_update1)) ### Hash Functionality | Deprecated | Recommended replacement | | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------: | | ippsSHA1GetSize
ippsSHA224GetSize
ippsSHA256GetSize
ippsSHA384GetSize
ippsSHA512GetSize
ippsSM3GetSize
ippsMD5GetSize | ippsHashGetSize_rmf | | ippsSHA1Init
ippsSHA224Init
ippsSHA256Init
ippsSHA384Init
ippsSHA512Init
ippsSM3Init
ippsMD5Init | ippsHashInit_rmf \* | | ippsSHA1Duplicate
ippsSHA224Duplicate
ippsSHA256Duplicate
ippsSHA384Duplicate
ippsSHA512Duplicate
ippsSM3Duplicate
ippsMD5Duplicate | ippsHashDuplicate_rmf | | ippsSHA1Pack, ippsSHA1Unpack
ippsSHA224Pack, ippsSHA224Unpack
ippsSHA256Pack, ippsSHA256Unpack
ippsSHA384Pack, ippsSHA384Unpack
ippsSHA512Pack, ippsSHA512Unpack
ippsSM3Pack, ippsSM3Unpack
ippsMD5Pack, ippsMD5Unpack | ippsHashPack_rmf,
ippsHashUnpack_rmf | | ippsSHA1Update, ippsSHA1GetTag, ippsSHA1Final
ippsSHA224Update, ippsSHA224GetTag, ippsSHA224Final
ippsSHA256Update, ippsSHA256GetTag, ippsSHA256Final
ippsSHA384Update, ippsSHA384GetTag, ippsSHA384Final
ippsSHA512Update, ippsSHA512GetTag, ippsSHA512Final
ippsSM3Update, ippsSM3GetTag, ippsSM3Final
ippsMD5Update, ippsMD5GetTag, ippsMD5Final | ippsHashUpdate_rmf,
ippsHashGetTag_rmf,
ippsHashFinal_rmf | | ippsSHA1MessageDigest
ippsSHA224MessageDigest
ippsSHA256MessageDigest
ippsSHA384MessageDigest
ippsSHA512MessageDigest
ippsSM3MessageDigest
ippsMD5MessageDigest | ippsHashMessage_rmf \* | | ippsHashGetSize | ippsHashGetSize_rmf | | ippsHashInit \*\* | ippsHashInit_rmf \* | | ippsHashDuplicate | ippsHashDuplicate_rmf | | ippsHashPack, ippsHashUnpack | ippsHashPack_rmf, ippsHashUnpack_rmf | | ippsHashUpdate, ippsHashGetTag,ippsHashFinal | ippsHashUpdate_rmf,ippsHashGetTag_rmf,ippsHashFinal_rmf | | ippsHashMessage \*\* | ippsHashMessage_rmf \* | >\* To choose hash algorithm, specify [IppsHashMethod parameter](#ippshashalgid-to-ippshashmethod-parameter-map) >\*\* IppsHashAlgId parameter used in ippsHMAC_Init and in ippsHMAC_Message for choosing hash algorithm is deprecated (see Recommended replacement column for alternative in [IppsHashAlgId to IppsHashMethod Parameter Map](#ippshashalgid-to-ippshashmethod-parameter-map) ### Keyed HMAC Functionality | Deprecated | Recommended replacement | | :------------------------------------------------ | :------------------------------------------------------------: | | ippsHMAC_GetSize | ippsHMAC_GetSize_rmf | | ippsHMAC_Init \*\* | ippsHMAC_Init_rmf \* | | ippsHMAC_Pack, ippsHMAC_Unack, ippsHMAC_Duplicate | ippsHMAC_Pack_rmf, ippsHMAC_Unpack_rmf, ippsHMAC_Duplicate_rmf | | ippsHMAC_Update, ippsHMAC_Final, ippsHMAC_GetTag | ippsHMAC_Update_rmf, ippsHMAC_Final_rmf, ippsHMAC_GetTag_rmf | | ippsHMAC_Message \*\* | ippsHMAC_Message_rmf \* | >\* To choose hash algorithm, specify [IppsHashMethod parameter](#ippshashalgid-to-ippshashmethod-parameter-map) >\*\* IppsHashAlgId parameter used in 'ippsHMAC_Init' and in ippsHMAC_Message for choosing hash algorithm is deprecated (see Recommended replacement column for alternative in [IppsHashAlgId to IppsHashMethod Parameter Map](#ippshashalgid-to-ippshashmethod-parameter-map) ### MGF Functionality | Deprecated | Recommended replacement | | :--------------- | :---------------------: | | ippsHMAC_GetSize | ippsHMAC_GetSize_rmf | ### RSA Encryption and Signature Schemes | Deprecated | Recommended replacement | | :------------------------------------------- | :--------------------------------------------------: | | ippsRSAEncrypt_OAEP, ippsRSADecrypt_OAEP | ippsRSAEncrypt_OAEP_rmf, ippsRSADecrypt_OAEP_rmf | | ippsRSASign_PSS, ippsRSAVerify_PSS | ippsRSASign_PSS_rmf, ippsRSAVerify_PSS_rmf | | ippsRSASign_PKCS1v15, ippsRSAVerify_PKCS1v15 | ippsRSASign_PKCS1v15_rmf, ippsRSAVerify_PKCS1v15_rmf | ### Elliptic Curve Cryptography (ECC) | Deprecated | Recommended replacement | | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | ippsECCPGetSize
ippsECCPGetSizeStd128r1
ippsECCPGetSizeStd128r2
ippsECCPGetSizeStd192r1
ippsECCPGetSizeStd224r1
ippsECCPGetSizeStd256r1
ippsECCPGetSizeStd384r1
ippsECCPGetSizeStd521r1
ippsECCPGetSizeStdSM2 | ippsGFpECGetSize | | ippsECCPInit
ippsECCPInitStd128r1
ippsECCPInitStd128r2
ippsECCPInitStd192r1
ippsECCPInitStd224r1
ippsECCPInitStd256r1
ippsECCPInitStd384r1
ippsECCPInitStd521r1
ippsECCPInitStdSM2 | ippsGFpECInitStd \*
* ippsGFpECInitStd functions provides both initialization
and set up standard EC set of parameters | | ippsECCPSet | ippsGFpECSet | | ippsECCPSetStd | ippsGFpECInitStd \*
* ippsGFpECInitStd functions provides both initialization
and set up standard EC set of parameters | | ippsECCPSetStd128r1
ippsECCPSetStd128r2
ippsECCPSetStd192r1
ippsECCPSetStd224r1
ippsECCPSetStd256r1
ippsECCPSetStd384r1
ippsECCPSetStd521r1
ippsECCPSetStdSM2 | ippsGFpECInitStd128r1
ippsGFpECInitStd128r2
ippsGFpECInitStd192r1
ippsGFpECInitStd224r1
ippsGFpECInitStd256r1
ippsGFpECInitStd384r1
ippsGFpECInitStd521r1
ippsGFpECInitStdSM2 | | ippsECCPBindGxyTblStd192r1
ippsECCPBindGxyTblStd224r1
ippsECCPBindGxyTblStd256r1
ippsECCPBindGxyTblStd384r1
ippsECCPBindGxyTblStd521r1
ippsECCPBindGxyTblStdSM2 | ippsGFpECBindGxyTblStd192r1
ippsGFpECBindGxyTblStd224r1
ippsGFpECBindGxyTblStd256r1
ippsGFpECBindGxyTblStd384r1
ippsGFpECBindGxyTblStd521r1
ippsGFpECBindGxyTblStdSM2 | | ippsECCPGet
ippsECCPGetOrderBitSize
ippsECCPValidate
ippsECCPPointGetSize, ippsECCPPointInit
ippsECCPSetPointAtInfinity
ippsECCPSetPoint,ippsECCPGetPoint
ippsECCPCheckPoint
ippsECCPComparePoint
ippsECCPNegativePoint
ippsECCPAddPoint
ippsECCPMulPointScalar | ippsGFpECGet
ippsGFpECGetSubgroup
ippsGFpECVerify
ippsGFpECPointGetSize, ippsGFpECPointInit
ippsGFpECSetPointAtInfinity
ippsGFpECSetPointRegular,ippsGFpECGetPointRegular
ippsGFpECTstPoint
ippsGFpECCmpPoint
ippsGFpECNegPoint
ippsGFpECAddPoint
ippsGFpECMulPoint | | ippsECCPGenKeyPair
ippsECCPPublicKey
ippsECCPValidateKeyPair
ippsECCPSetKeyPair | ippsGFpECPrivateKey
ippsGFpECPublicKey
ippsGFpECTstKeyPair
n/a | | ippsECCPSharedSecretDH
ippsECCPSharedSecretDHC | ippsGFpECSharedSecretDH
ippsGFpECSharedSecretDHC | | ippsECCPSignDSA
ippsECCPVerifyDSA
ippsECCPSignNR
ippsECCPVerifyNR
ippsECCPSignSM2
ippsECCPVerifySM2 | ippsGFpECSignDSA
ippsGFpECVerifyDSA
ippsGFpECSignNR
ippsGFpECVerifyNR
ippsGFpECSignSM2
ippsGFpECVerifySM2 | ### IppsHashAlgId to IppsHashMethod Parameter Map | Algorithm | IppsHashAlgId (deprecated) | IppsHashMethod (recommended) | Notes | | :--------: | :------------------------: | :---------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------: | | SHA1 | ippsHashAlg_SHA1 | ippsHashMethod_SHA1
ippsHashMethod_SHA1_NI
ippsHashMethod_SHA1_TT | Intel® Secure Hash Algorithm - New Instructions (Intel® SHA-NI) not supported
Intel SHA-NI only supported
Automatic switch on Intel SHA-NI, if possible (tick-tock) | | SHA224 | ippsHashAlg_SHA224 | ippsHashMethod_SHA224
ippsHashMethod_SHA224_NI
ippsHashMethod_SHA224_TT | Intel SHA-NI not supported
Intel SHA-NI only supported
Automatic switch on Intel SHA-NI, if possible supported | | SHA256 | ippsHashAlg_SHA256 | ippsHashMethod_SHA256
ippsHashMethod_SHA256_NI
ippsHashMethod_SHA256_TT | Intel SHA-NI not supported
Intel SHA-NI only supported
Automatic switch on Intel SHA-NI, if possible supported | | SHA384 | ippsHashAlg_SHA384 | ippsHashMethod_SHA384 | - | | SHA512 | ippsHashAgl_SHA512 | ippsHashMethod_SHA512 | - | | SM3 | ippsHashAlg_SM3 | ippsHashMethod_SM3 | - | | MD5 | ippsHashAlg_MD5 | ippsHashMethod_MD5 | - | | SHA512-224 | ippsHashAlg_SHA512_224 | ippsHashMethod_SHA512_224 | - | | SHA512-256 | ippsHashAlg_SHA512_256 | ippsHashMethod_SHA512_256 | - |