level 3
一只阿北Dy
楼主
/*****************************************************************************
函 数 名 : SDP_DecryptEx
功能描述 : 解密数据
输入参数 : ulDomain 密钥的域
pucCipherText 密文
ulCTLen 密文长度
ulHTLen hmac的长度,包含头部
输出参数 :pucPlainText 明文指针
输入输出: pulPTLen 返回明文长度,传入的长度不得小于实际算法加密的长度,即用普通AES加密的长度。
返 回 值 : 错误码
修改历史 :
1.日 期 : 2016年1月31日
作 者 : l00171031
修改内容 : 新生成函数
*****************************************************************************/
WSEC_ERR_T SDP_DecryptEx(
WSEC_UINT32 ulDomain,
const WSEC_BYTE *pucCipherText,
WSEC_UINT32 ulCTLen,
WSEC_BYTE *pucPlainText,
WSEC_UINT32 *pulPTLen)
{
SDP_CIPHER_HEAD_STRUEX *pstCipherHead = WSEC_NULL_PTR;
WSEC_UINT32 eAlgType = WSEC_ALGTYPE_UNKNOWN;
WSEC_BYTE aucKey[SDP_KEY_MAX_LEN] = {0};
WSEC_ERR_T ulRet = WSEC_SUCCESS;
WSEC_UINT32 ulKeyLen = 0;
WSEC_UINT32 ulIVLen = 0;
WSEC_UINT32 ulTempPTLen = 0;
WSEC_UINT32 ulIter = 1;
/* check input */
return_err_if_para_invalid("SDP_DecryptEx", pucCipherText && pucPlainText && pulPTLen && (ulCTLen > 0) && (pucPlainText != pucCipherText));
ulTempPTLen = *pulPTLen;
/* parse header */
return_oper_if((ulCTLen < sizeof(SDP_CIPHER_HEAD_STRUEX)), WSEC_LOG_E("[SDP] Buffer for cipher text is not enough."), WSEC_ERR_INPUT_BUFF_NOT_ENOUGH);
2016年08月06日 00点08分
1
函 数 名 : SDP_DecryptEx
功能描述 : 解密数据
输入参数 : ulDomain 密钥的域
pucCipherText 密文
ulCTLen 密文长度
ulHTLen hmac的长度,包含头部
输出参数 :pucPlainText 明文指针
输入输出: pulPTLen 返回明文长度,传入的长度不得小于实际算法加密的长度,即用普通AES加密的长度。
返 回 值 : 错误码
修改历史 :
1.日 期 : 2016年1月31日
作 者 : l00171031
修改内容 : 新生成函数
*****************************************************************************/
WSEC_ERR_T SDP_DecryptEx(
WSEC_UINT32 ulDomain,
const WSEC_BYTE *pucCipherText,
WSEC_UINT32 ulCTLen,
WSEC_BYTE *pucPlainText,
WSEC_UINT32 *pulPTLen)
{
SDP_CIPHER_HEAD_STRUEX *pstCipherHead = WSEC_NULL_PTR;
WSEC_UINT32 eAlgType = WSEC_ALGTYPE_UNKNOWN;
WSEC_BYTE aucKey[SDP_KEY_MAX_LEN] = {0};
WSEC_ERR_T ulRet = WSEC_SUCCESS;
WSEC_UINT32 ulKeyLen = 0;
WSEC_UINT32 ulIVLen = 0;
WSEC_UINT32 ulTempPTLen = 0;
WSEC_UINT32 ulIter = 1;
/* check input */
return_err_if_para_invalid("SDP_DecryptEx", pucCipherText && pucPlainText && pulPTLen && (ulCTLen > 0) && (pucPlainText != pucCipherText));
ulTempPTLen = *pulPTLen;
/* parse header */
return_oper_if((ulCTLen < sizeof(SDP_CIPHER_HEAD_STRUEX)), WSEC_LOG_E("[SDP] Buffer for cipher text is not enough."), WSEC_ERR_INPUT_BUFF_NOT_ENOUGH);