mirror of https://github.com/acidanthera/audk.git
CryptoPkg/BaseCryptLib: replace HmacXxxInit API with HmacXxxSetKey
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1792 HmacXxxInit() is supposed to be initialize user supplied buffer as HMAC context, as well as user supplied key. Currently it has no real use cases. Due to BZ1792, the user has no way to get correct size of context buffer after it's fixed, and then cannot make use of HmacXxxInit to initialize it. So it's decided to replace it with HmacXxxSetKey to keep the functionality of supplying a key to HMAC, but drop all other initialization works. The user can still get HMAC context via HmacXxxNew interface, which hides the details about the context. Cc: Xiaoyu Lu <xiaoyux.lu@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Jian J Wang <jian.j.wang@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Xiaoyu Lu <xiaoyux.lu@intel.com>
This commit is contained in:
parent
5cd3d4bc43
commit
a23fdff6fb
|
@ -1073,24 +1073,24 @@ HmacMd5Free (
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacMd5Context as HMAC-MD5 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacMd5Update().
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacMd5Context Pointer to HMAC-MD5 context being initialized.
|
@param[out] HmacMd5Context Pointer to HMAC-MD5 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-MD5 context initialization succeeded.
|
@retval TRUE Key is set successfully.
|
||||||
@retval FALSE HMAC-MD5 context initialization failed.
|
@retval FALSE Key is set unsuccessfully.
|
||||||
@retval FALSE This interface is not supported.
|
@retval FALSE This interface is not supported.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacMd5Init (
|
HmacMd5SetKey (
|
||||||
OUT VOID *HmacMd5Context,
|
OUT VOID *HmacMd5Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -1123,8 +1123,8 @@ HmacMd5Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-MD5 digest on a data buffer of the specified size.
|
This function performs HMAC-MD5 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-MD5 context should be already correctly initialized by HmacMd5Init(), and should not be
|
HMAC-MD5 context should be initialized by HmacMd5New(), and should not be finalized by
|
||||||
finalized by HmacMd5Final(). Behavior with invalid context is undefined.
|
HmacMd5Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
@ -1152,8 +1152,8 @@ HmacMd5Update (
|
||||||
This function completes HMAC-MD5 hash computation and retrieves the digest value into
|
This function completes HMAC-MD5 hash computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-MD5 context cannot
|
the specified memory. After this function has been called, the HMAC-MD5 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-MD5 context should be already correctly initialized by HmacMd5Init(), and should not be
|
HMAC-MD5 context should be initialized by HmacMd5New(), and should not be finalized by
|
||||||
finalized by HmacMd5Final(). Behavior with invalid HMAC-MD5 context is undefined.
|
HmacMd5Final(). Behavior with invalid HMAC-MD5 context is undefined.
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
@ -1223,24 +1223,24 @@ HmacSha1Free (
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha1Context as HMAC-SHA1 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha1Update().
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context being initialized.
|
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-SHA1 context initialization succeeded.
|
@retval TRUE The Key is set successfully.
|
||||||
@retval FALSE HMAC-SHA1 context initialization failed.
|
@retval FALSE The Key is set unsuccessfully.
|
||||||
@retval FALSE This interface is not supported.
|
@retval FALSE This interface is not supported.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha1Init (
|
HmacSha1SetKey (
|
||||||
OUT VOID *HmacSha1Context,
|
OUT VOID *HmacSha1Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -1273,8 +1273,8 @@ HmacSha1Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-SHA1 digest on a data buffer of the specified size.
|
This function performs HMAC-SHA1 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-SHA1 context should be already correctly initialized by HmacSha1Init(), and should not
|
HMAC-SHA1 context should be initialized by HmacSha1New(), and should not be finalized by
|
||||||
be finalized by HmacSha1Final(). Behavior with invalid context is undefined.
|
HmacSha1Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
@ -1302,8 +1302,8 @@ HmacSha1Update (
|
||||||
This function completes HMAC-SHA1 hash computation and retrieves the digest value into
|
This function completes HMAC-SHA1 hash computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-SHA1 context cannot
|
the specified memory. After this function has been called, the HMAC-SHA1 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-SHA1 context should be already correctly initialized by HmacSha1Init(), and should
|
HMAC-SHA1 context should be initialized by HmacSha1New(), and should not be finalized
|
||||||
not be finalized by HmacSha1Final(). Behavior with invalid HMAC-SHA1 context is undefined.
|
by HmacSha1Final(). Behavior with invalid HMAC-SHA1 context is undefined.
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
@ -1368,24 +1368,24 @@ HmacSha256Free (
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha256Context as HMAC-SHA256 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha256Update().
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context being initialized.
|
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-SHA256 context initialization succeeded.
|
@retval TRUE The Key is set successfully.
|
||||||
@retval FALSE HMAC-SHA256 context initialization failed.
|
@retval FALSE The Key is set unsuccessfully.
|
||||||
@retval FALSE This interface is not supported.
|
@retval FALSE This interface is not supported.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha256Init (
|
HmacSha256SetKey (
|
||||||
OUT VOID *HmacSha256Context,
|
OUT VOID *HmacSha256Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -1418,8 +1418,8 @@ HmacSha256Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-SHA256 digest on a data buffer of the specified size.
|
This function performs HMAC-SHA256 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-SHA256 context should be already correctly initialized by HmacSha256Init(), and should not
|
HMAC-SHA256 context should be initialized by HmacSha256New(), and should not be finalized
|
||||||
be finalized by HmacSha256Final(). Behavior with invalid context is undefined.
|
by HmacSha256Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
If this interface is not supported, then return FALSE.
|
If this interface is not supported, then return FALSE.
|
||||||
|
@ -1447,8 +1447,8 @@ HmacSha256Update (
|
||||||
This function completes HMAC-SHA256 hash computation and retrieves the digest value into
|
This function completes HMAC-SHA256 hash computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-SHA256 context cannot
|
the specified memory. After this function has been called, the HMAC-SHA256 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-SHA256 context should be already correctly initialized by HmacSha256Init(), and should
|
HMAC-SHA256 context should be initialized by HmacSha256New(), and should not be finalized
|
||||||
not be finalized by HmacSha256Final(). Behavior with invalid HMAC-SHA256 context is undefined.
|
by HmacSha256Final(). Behavior with invalid HMAC-SHA256 context is undefined.
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
|
|
@ -78,22 +78,22 @@ HmacMd5Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacMd5Context as HMAC-MD5 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacMd5Update().
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacMd5Context Pointer to HMAC-MD5 context being initialized.
|
@param[out] HmacMd5Context Pointer to HMAC-MD5 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-MD5 context initialization succeeded.
|
@retval TRUE Key is set successfully.
|
||||||
@retval FALSE HMAC-MD5 context initialization failed.
|
@retval FALSE Key is set unsuccessfully.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacMd5Init (
|
HmacMd5SetKey (
|
||||||
OUT VOID *HmacMd5Context,
|
OUT VOID *HmacMd5Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -106,13 +106,6 @@ HmacMd5Init (
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// OpenSSL HMAC-MD5 Context Initialization
|
|
||||||
//
|
|
||||||
memset(HmacMd5Context, 0, HMAC_MD5_CTX_SIZE);
|
|
||||||
if (HMAC_CTX_reset ((HMAC_CTX *)HmacMd5Context) != 1) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
if (HMAC_Init_ex ((HMAC_CTX *)HmacMd5Context, Key, (UINT32) KeySize, EVP_md5(), NULL) != 1) {
|
if (HMAC_Init_ex ((HMAC_CTX *)HmacMd5Context, Key, (UINT32) KeySize, EVP_md5(), NULL) != 1) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -159,8 +152,8 @@ HmacMd5Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-MD5 digest on a data buffer of the specified size.
|
This function performs HMAC-MD5 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-MD5 context should be already correctly initialized by HmacMd5Init(), and should not be
|
HMAC-MD5 context should be initialized by HmacMd5New(), and should not be finalized by
|
||||||
finalized by HmacMd5Final(). Behavior with invalid context is undefined.
|
HmacMd5Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
|
|
||||||
|
@ -210,8 +203,8 @@ HmacMd5Update (
|
||||||
This function completes HMAC-MD5 digest computation and retrieves the digest value into
|
This function completes HMAC-MD5 digest computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-MD5 context cannot
|
the specified memory. After this function has been called, the HMAC-MD5 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-MD5 context should be already correctly initialized by HmacMd5Init(), and should not be
|
HMAC-MD5 context should be initialized by HmacMd5New(), and should not be finalized by
|
||||||
finalized by HmacMd5Final(). Behavior with invalid HMAC-MD5 context is undefined.
|
HmacMd5Final(). Behavior with invalid HMAC-MD5 context is undefined.
|
||||||
|
|
||||||
If HmacMd5Context is NULL, then return FALSE.
|
If HmacMd5Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacMd5Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacMd5Context as HMAC-MD5 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacMd5Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacMd5Context Pointer to HMAC-MD5 context being initialized.
|
@param[out] HmacMd5Context Pointer to HMAC-MD5 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacMd5Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacMd5Init (
|
HmacMd5SetKey (
|
||||||
OUT VOID *HmacMd5Context,
|
OUT VOID *HmacMd5Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
|
@ -79,22 +79,22 @@ HmacSha1Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha1Context as HMAC-SHA1 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha1Update().
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context being initialized.
|
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-SHA1 context initialization succeeded.
|
@retval TRUE The Key is set successfully.
|
||||||
@retval FALSE HMAC-SHA1 context initialization failed.
|
@retval FALSE The Key is set unsuccessfully.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha1Init (
|
HmacSha1SetKey (
|
||||||
OUT VOID *HmacSha1Context,
|
OUT VOID *HmacSha1Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -107,13 +107,6 @@ HmacSha1Init (
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// OpenSSL HMAC-SHA1 Context Initialization
|
|
||||||
//
|
|
||||||
memset(HmacSha1Context, 0, HMAC_SHA1_CTX_SIZE);
|
|
||||||
if (HMAC_CTX_reset ((HMAC_CTX *)HmacSha1Context) != 1) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
if (HMAC_Init_ex ((HMAC_CTX *)HmacSha1Context, Key, (UINT32) KeySize, EVP_sha1(), NULL) != 1) {
|
if (HMAC_Init_ex ((HMAC_CTX *)HmacSha1Context, Key, (UINT32) KeySize, EVP_sha1(), NULL) != 1) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -160,8 +153,8 @@ HmacSha1Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-SHA1 digest on a data buffer of the specified size.
|
This function performs HMAC-SHA1 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-SHA1 context should be already correctly initialized by HmacSha1Init(), and should not
|
HMAC-SHA1 context should be initialized by HmacSha1New(), and should not be finalized by
|
||||||
be finalized by HmacSha1Final(). Behavior with invalid context is undefined.
|
HmacSha1Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
|
|
||||||
|
@ -211,8 +204,8 @@ HmacSha1Update (
|
||||||
This function completes HMAC-SHA1 digest computation and retrieves the digest value into
|
This function completes HMAC-SHA1 digest computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-SHA1 context cannot
|
the specified memory. After this function has been called, the HMAC-SHA1 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-SHA1 context should be already correctly initialized by HmacSha1Init(), and should
|
HMAC-SHA1 context should be initialized by HmacSha1New(), and should not be finalized by
|
||||||
not be finalized by HmacSha1Final(). Behavior with invalid HMAC-SHA1 context is undefined.
|
HmacSha1Final(). Behavior with invalid HMAC-SHA1 context is undefined.
|
||||||
|
|
||||||
If HmacSha1Context is NULL, then return FALSE.
|
If HmacSha1Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacSha1Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha1Context as HMAC-SHA1 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha1Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context being initialized.
|
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacSha1Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha1Init (
|
HmacSha1SetKey (
|
||||||
OUT VOID *HmacSha1Context,
|
OUT VOID *HmacSha1Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
|
@ -78,22 +78,22 @@ HmacSha256Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha256Context as HMAC-SHA256 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha256Update().
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
|
|
||||||
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context being initialized.
|
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
@retval TRUE HMAC-SHA256 context initialization succeeded.
|
@retval TRUE The Key is set successfully.
|
||||||
@retval FALSE HMAC-SHA256 context initialization failed.
|
@retval FALSE The Key is set unsuccessfully.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha256Init (
|
HmacSha256SetKey (
|
||||||
OUT VOID *HmacSha256Context,
|
OUT VOID *HmacSha256Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
@ -106,13 +106,6 @@ HmacSha256Init (
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// OpenSSL HMAC-SHA256 Context Initialization
|
|
||||||
//
|
|
||||||
memset(HmacSha256Context, 0, HMAC_SHA256_CTX_SIZE);
|
|
||||||
if (HMAC_CTX_reset ((HMAC_CTX *)HmacSha256Context) != 1) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
if (HMAC_Init_ex ((HMAC_CTX *)HmacSha256Context, Key, (UINT32) KeySize, EVP_sha256(), NULL) != 1) {
|
if (HMAC_Init_ex ((HMAC_CTX *)HmacSha256Context, Key, (UINT32) KeySize, EVP_sha256(), NULL) != 1) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -159,8 +152,8 @@ HmacSha256Duplicate (
|
||||||
|
|
||||||
This function performs HMAC-SHA256 digest on a data buffer of the specified size.
|
This function performs HMAC-SHA256 digest on a data buffer of the specified size.
|
||||||
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
It can be called multiple times to compute the digest of long or discontinuous data streams.
|
||||||
HMAC-SHA256 context should be already correctly initialized by HmacSha256Init(), and should not
|
HMAC-SHA256 context should be initialized by HmacSha256New(), and should not be finalized
|
||||||
be finalized by HmacSha256Final(). Behavior with invalid context is undefined.
|
by HmacSha256Final(). Behavior with invalid context is undefined.
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
|
|
||||||
|
@ -210,8 +203,8 @@ HmacSha256Update (
|
||||||
This function completes HMAC-SHA256 hash computation and retrieves the digest value into
|
This function completes HMAC-SHA256 hash computation and retrieves the digest value into
|
||||||
the specified memory. After this function has been called, the HMAC-SHA256 context cannot
|
the specified memory. After this function has been called, the HMAC-SHA256 context cannot
|
||||||
be used again.
|
be used again.
|
||||||
HMAC-SHA256 context should be already correctly initialized by HmacSha256Init(), and should
|
HMAC-SHA256 context should be initialized by HmacSha256New(), and should not be finalized
|
||||||
not be finalized by HmacSha256Final(). Behavior with invalid HMAC-SHA256 context is undefined.
|
by HmacSha256Final(). Behavior with invalid HMAC-SHA256 context is undefined.
|
||||||
|
|
||||||
If HmacSha256Context is NULL, then return FALSE.
|
If HmacSha256Context is NULL, then return FALSE.
|
||||||
If HmacValue is NULL, then return FALSE.
|
If HmacValue is NULL, then return FALSE.
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacSha256Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha256Context as HMAC-SHA256 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha256Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context being initialized.
|
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacSha256Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha256Init (
|
HmacSha256SetKey (
|
||||||
OUT VOID *HmacSha256Context,
|
OUT VOID *HmacSha256Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacMd5Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacMd5Context as HMAC-MD5 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacMd5Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacMd5Context Pointer to HMAC-MD5 context being initialized.
|
@param[out] HmacMd5Context Pointer to HMAC-MD5 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacMd5Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacMd5Init (
|
HmacMd5SetKey (
|
||||||
OUT VOID *HmacMd5Context,
|
OUT VOID *HmacMd5Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacSha1Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha1Context as HMAC-SHA1 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha1Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context being initialized.
|
@param[out] HmacSha1Context Pointer to HMAC-SHA1 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacSha1Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha1Init (
|
HmacSha1SetKey (
|
||||||
OUT VOID *HmacSha1Context,
|
OUT VOID *HmacSha1Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
|
@ -65,12 +65,12 @@ HmacSha256Free (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Initializes user-supplied memory pointed by HmacSha256Context as HMAC-SHA256 context for
|
Set user-supplied key for subsequent use. It must be done before any
|
||||||
subsequent use.
|
calling to HmacSha256Update().
|
||||||
|
|
||||||
Return FALSE to indicate this interface is not supported.
|
Return FALSE to indicate this interface is not supported.
|
||||||
|
|
||||||
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context being initialized.
|
@param[out] HmacSha256Context Pointer to HMAC-SHA256 context.
|
||||||
@param[in] Key Pointer to the user-supplied key.
|
@param[in] Key Pointer to the user-supplied key.
|
||||||
@param[in] KeySize Key size in bytes.
|
@param[in] KeySize Key size in bytes.
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ HmacSha256Free (
|
||||||
**/
|
**/
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
EFIAPI
|
EFIAPI
|
||||||
HmacSha256Init (
|
HmacSha256SetKey (
|
||||||
OUT VOID *HmacSha256Context,
|
OUT VOID *HmacSha256Context,
|
||||||
IN CONST UINT8 *Key,
|
IN CONST UINT8 *Key,
|
||||||
IN UINTN KeySize
|
IN UINTN KeySize
|
||||||
|
|
Loading…
Reference in New Issue