| /** @file | |
| Diffie-Hellman Wrapper Implementation which does not provide | |
| real capabilities. | |
| Copyright (c) 2012, 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" | |
| /** | |
| Allocates and Initializes one Diffie-Hellman Context for subsequent use. | |
| @return Pointer to the Diffie-Hellman Context that has been initialized. | |
| If the interface is not supported, DhNew() returns NULL. | |
| **/ | |
| VOID * | |
| EFIAPI | |
| DhNew ( | |
| VOID | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| return NULL; | |
| } | |
| /** | |
| Release the specified DH context. | |
| If the interface is not supported, then ASSERT(). | |
| @param[in] DhContext Pointer to the DH context to be released. | |
| **/ | |
| VOID | |
| EFIAPI | |
| DhFree ( | |
| IN VOID *DhContext | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| } | |
| /** | |
| Generates DH parameter. | |
| Return FALSE to indicate this interface is not supported. | |
| @param[in, out] DhContext Pointer to the DH context. | |
| @param[in] Generator Value of generator. | |
| @param[in] PrimeLength Length in bits of prime to be generated. | |
| @param[out] Prime Pointer to the buffer to receive the generated prime number. | |
| @retval FALSE This interface is not supported. | |
| **/ | |
| BOOLEAN | |
| EFIAPI | |
| DhGenerateParameter ( | |
| IN OUT VOID *DhContext, | |
| IN UINTN Generator, | |
| IN UINTN PrimeLength, | |
| OUT UINT8 *Prime | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| return FALSE; | |
| } | |
| /** | |
| Sets generator and prime parameters for DH. | |
| Return FALSE to indicate this interface is not supported. | |
| @param[in, out] DhContext Pointer to the DH context. | |
| @param[in] Generator Value of generator. | |
| @param[in] PrimeLength Length in bits of prime to be generated. | |
| @param[in] Prime Pointer to the prime number. | |
| @retval FALSE This interface is not supported. | |
| **/ | |
| BOOLEAN | |
| EFIAPI | |
| DhSetParameter ( | |
| IN OUT VOID *DhContext, | |
| IN UINTN Generator, | |
| IN UINTN PrimeLength, | |
| IN CONST UINT8 *Prime | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| return FALSE; | |
| } | |
| /** | |
| Generates DH public key. | |
| Return FALSE to indicate this interface is not supported. | |
| @param[in, out] DhContext Pointer to the DH context. | |
| @param[out] PublicKey Pointer to the buffer to receive generated public key. | |
| @param[in, out] PublicKeySize On input, the size of PublicKey buffer in bytes. | |
| On output, the size of data returned in PublicKey buffer in bytes. | |
| @retval FALSE This interface is not supported. | |
| **/ | |
| BOOLEAN | |
| EFIAPI | |
| DhGenerateKey ( | |
| IN OUT VOID *DhContext, | |
| OUT UINT8 *PublicKey, | |
| IN OUT UINTN *PublicKeySize | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| return FALSE; | |
| } | |
| /** | |
| Computes exchanged common key. | |
| Return FALSE to indicate this interface is not supported. | |
| @param[in, out] DhContext Pointer to the DH context. | |
| @param[in] PeerPublicKey Pointer to the peer's public key. | |
| @param[in] PeerPublicKeySize Size of peer's public key in bytes. | |
| @param[out] Key Pointer to the buffer to receive generated key. | |
| @param[in, out] KeySize On input, the size of Key buffer in bytes. | |
| On output, the size of data returned in Key buffer in bytes. | |
| @retval FALSE This interface is not supported. | |
| **/ | |
| BOOLEAN | |
| EFIAPI | |
| DhComputeKey ( | |
| IN OUT VOID *DhContext, | |
| IN CONST UINT8 *PeerPublicKey, | |
| IN UINTN PeerPublicKeySize, | |
| OUT UINT8 *Key, | |
| IN OUT UINTN *KeySize | |
| ) | |
| { | |
| ASSERT (FALSE); | |
| return FALSE; | |
| } |