diff options
author | Long, Qin <qin.long@intel.com> | 2013-11-19 01:49:49 +0000 |
---|---|---|
committer | sfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524> | 2013-11-19 01:49:49 +0000 |
commit | 3aa8dc6cd37d9487e32d24e49e63267df9b9cccb (patch) | |
tree | 99a9f9403cf4c9aaaa3c96015950a0faa03750f0 /SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h | |
parent | 419db80bef66edff583a0a5f406e801d70f11344 (diff) | |
download | edk2-3aa8dc6cd37d9487e32d24e49e63267df9b9cccb.tar.gz edk2-3aa8dc6cd37d9487e32d24e49e63267df9b9cccb.tar.bz2 edk2-3aa8dc6cd37d9487e32d24e49e63267df9b9cccb.zip |
Add UEFI RNG Protocol support. The driver will leverage Intel Secure Key technology to produce the Random Number Generator protocol, which is used to provide high-quality random numbers for use in applications, or entropy for seeding other random number generators. Refer to http://software.intel.com/en-us/articles/intel-digital-random-number-generator-drng-software-implementation-guide/ for more information about Intel Secure Key technology.
Signed-off-by: Long, Qin <qin.long@intel.com>
Reviewed-by: Fu, Siyuan <siyuan.fu@intel.com>
Reviewed-by: Rosenbaum, Lee G <lee.g.rosenbaum@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14858 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h')
-rw-r--r-- | SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h b/SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h new file mode 100644 index 0000000000..8279c61160 --- /dev/null +++ b/SecurityPkg/RandomNumberGenerator/RngDxe/AesCore.h @@ -0,0 +1,37 @@ +/** @file
+ Function prototype for AES Block Cipher support.
+
+Copyright (c) 2013, 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.
+
+**/
+
+#ifndef __AES_CORE_H__
+#define __AES_CORE_H__
+
+/**
+ Encrypts one single block data (128 bits) with AES algorithm.
+
+ @param[in] Key AES symmetric key buffer.
+ @param[in] InData One block of input plaintext to be encrypted.
+ @param[out] OutData Encrypted output ciphertext.
+
+ @retval EFI_SUCCESS AES Block Encryption succeeded.
+ @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
+
+**/
+EFI_STATUS
+EFIAPI
+AesEncrypt (
+ IN UINT8 *Key,
+ IN UINT8 *InData,
+ OUT UINT8 *OutData
+ );
+
+#endif // __AES_CORE_H__
|