REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3596 Parallel hash function ParallelHash256HashAll, as defined in NIST's Special Publication 800-185, published December 2016. It utilizes multi-process to calculate the digest. Passed CI test. Onprotocol version code passed test. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com> Cc: Guomin Jiang <guomin.jiang@intel.com> Cc: Siyuan Fu <siyuan.fu@intel.com> Signed-off-by: Zhihao Li <zhihao.li@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   ParallelHash Implementation which does not provide real capabilities.
 | |
| 
 | |
| Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>
 | |
| SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #include "InternalCryptLib.h"
 | |
| 
 | |
| /**
 | |
|   Parallel hash function ParallelHash256, as defined in NIST's Special Publication 800-185,
 | |
|   published December 2016.
 | |
| 
 | |
|   @param[in]   Input            Pointer to the input message (X).
 | |
|   @param[in]   InputByteLen     The number(>0) of input bytes provided for the input data.
 | |
|   @param[in]   BlockSize        The size of each block (B).
 | |
|   @param[out]  Output           Pointer to the output buffer.
 | |
|   @param[in]   OutputByteLen    The desired number of output bytes (L).
 | |
|   @param[in]   Customization    Pointer to the customization string (S).
 | |
|   @param[in]   CustomByteLen    The length of the customization string in bytes.
 | |
| 
 | |
|   @retval FALSE  This interface is not supported.
 | |
| 
 | |
| **/
 | |
| BOOLEAN
 | |
| EFIAPI
 | |
| ParallelHash256HashAll (
 | |
|   IN CONST VOID   *Input,
 | |
|   IN       UINTN  InputByteLen,
 | |
|   IN       UINTN  BlockSize,
 | |
|   OUT      VOID   *Output,
 | |
|   IN       UINTN  OutputByteLen,
 | |
|   IN CONST VOID   *Customization,
 | |
|   IN       UINTN  CustomByteLen
 | |
|   )
 | |
| {
 | |
|   ASSERT (FALSE);
 | |
|   return FALSE;
 | |
| }
 |