mirror of https://github.com/acidanthera/audk.git
166 lines
4.4 KiB
C
166 lines
4.4 KiB
C
/** @file
|
|
AES Wrapper Implementation which does not provide real capabilities.
|
|
|
|
Copyright (c) 2012 - 2018, Intel Corporation. All rights reserved.<BR>
|
|
This program and the accompanying materials
|
|
are licensed and made available under the terms and conditions of the BSD License
|
|
which accompanies this distribution. The full text of the license may be found at
|
|
http://opensource.org/licenses/bsd-license.php
|
|
|
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
**/
|
|
|
|
#include "InternalCryptLib.h"
|
|
|
|
/**
|
|
Retrieves the size, in bytes, of the context buffer required for AES operations.
|
|
|
|
Return zero to indicate this interface is not supported.
|
|
|
|
@retval 0 This interface is not supported.
|
|
|
|
**/
|
|
UINTN
|
|
EFIAPI
|
|
AesGetContextSize (
|
|
VOID
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return 0;
|
|
}
|
|
|
|
/**
|
|
Initializes user-supplied memory as AES context for subsequent use.
|
|
|
|
Return FALSE to indicate this interface is not supported.
|
|
|
|
@param[out] AesContext Pointer to AES context being initialized.
|
|
@param[in] Key Pointer to the user-supplied AES key.
|
|
@param[in] KeyLength Length of AES key in bits.
|
|
|
|
@retval FALSE This interface is not supported.
|
|
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
AesInit (
|
|
OUT VOID *AesContext,
|
|
IN CONST UINT8 *Key,
|
|
IN UINTN KeyLength
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return FALSE;
|
|
}
|
|
|
|
/**
|
|
Performs AES encryption on a data buffer of the specified size in ECB mode.
|
|
|
|
Return FALSE to indicate this interface is not supported.
|
|
|
|
@param[in] AesContext Pointer to the AES context.
|
|
@param[in] Input Pointer to the buffer containing the data to be encrypted.
|
|
@param[in] InputSize Size of the Input buffer in bytes.
|
|
@param[out] Output Pointer to a buffer that receives the AES encryption output.
|
|
|
|
@retval FALSE This interface is not supported.
|
|
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
AesEcbEncrypt (
|
|
IN VOID *AesContext,
|
|
IN CONST UINT8 *Input,
|
|
IN UINTN InputSize,
|
|
OUT UINT8 *Output
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return FALSE;
|
|
}
|
|
|
|
/**
|
|
Performs AES decryption on a data buffer of the specified size in ECB mode.
|
|
|
|
Return FALSE to indicate this interface is not supported.
|
|
|
|
@param[in] AesContext Pointer to the AES context.
|
|
@param[in] Input Pointer to the buffer containing the data to be decrypted.
|
|
@param[in] InputSize Size of the Input buffer in bytes.
|
|
@param[out] Output Pointer to a buffer that receives the AES decryption output.
|
|
|
|
@retval FALSE This interface is not supported.
|
|
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
AesEcbDecrypt (
|
|
IN VOID *AesContext,
|
|
IN CONST UINT8 *Input,
|
|
IN UINTN InputSize,
|
|
OUT UINT8 *Output
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return FALSE;
|
|
}
|
|
|
|
/**
|
|
Performs AES encryption on a data buffer of the specified size in CBC mode.
|
|
|
|
Return FALSE to indicate this interface is not supported.
|
|
|
|
@param[in] AesContext Pointer to the AES context.
|
|
@param[in] Input Pointer to the buffer containing the data to be encrypted.
|
|
@param[in] InputSize Size of the Input buffer in bytes.
|
|
@param[in] Ivec Pointer to initialization vector.
|
|
@param[out] Output Pointer to a buffer that receives the AES encryption output.
|
|
|
|
@retval FALSE This interface is not supported.
|
|
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
AesCbcEncrypt (
|
|
IN VOID *AesContext,
|
|
IN CONST UINT8 *Input,
|
|
IN UINTN InputSize,
|
|
IN CONST UINT8 *Ivec,
|
|
OUT UINT8 *Output
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return FALSE;
|
|
}
|
|
|
|
/**
|
|
Performs AES decryption on a data buffer of the specified size in CBC mode.
|
|
|
|
Return FALSE to indicate this interface is not supported.
|
|
|
|
@param[in] AesContext Pointer to the AES context.
|
|
@param[in] Input Pointer to the buffer containing the data to be encrypted.
|
|
@param[in] InputSize Size of the Input buffer in bytes.
|
|
@param[in] Ivec Pointer to initialization vector.
|
|
@param[out] Output Pointer to a buffer that receives the AES encryption output.
|
|
|
|
@retval FALSE This interface is not supported.
|
|
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
AesCbcDecrypt (
|
|
IN VOID *AesContext,
|
|
IN CONST UINT8 *Input,
|
|
IN UINTN InputSize,
|
|
IN CONST UINT8 *Ivec,
|
|
OUT UINT8 *Output
|
|
)
|
|
{
|
|
ASSERT (FALSE);
|
|
return FALSE;
|
|
}
|