mimajingsai_3
一种高性能的DRBG设计方案 张栩嫣周子怡徐思琦密码竞赛项目
DRBG (Deterministic Random Bit Generator):
DRBG 是一种确定性随机比特生成器,它基于初始种子(种子值)和确定性算法生成伪随机数。这种生成器通常用于密码学、安全通信和随机数的加密应用。  
DRBG 的优点是可以通过控制种子值和算法来重现生成的随机数序列,这使得它适用于安全应用,可以验证和复现随机性。  
一个常见的DRBG实现是NIST的HMAC_DRBG,它使用HMAC(Hash-based Message Authentication Code)算法来生成伪随机数。  
TRNG (True Random Number Generator):
TRNG 是一种真随机数生成器,它利用物理过程中的随机性事件来生成随机数。这些随机性事件可以是基于物理现象的,例如电子噪声、热噪声、光电效应等。  
TRNG 的优点是生成的随机数是真正随机的,不受算法的影响,因此适用于需要高度随机性的应用,如密码学中的密钥生成。  
TRNG 通常比DRBG更难以实现,因为它需要物理设备来捕获随机性事件,并且可能需要更多的硬件成本。  
在本仓库中,使用了aes,sm4,chacha20算法做DRBG。
How to Compile
mkdir build
cd build
cmake ..(如果是debug模式则cmake -DCMAKE_BUILD_TYPE=Debug ..)
make
Description
				
					Languages
				
				
								
								
									C
								
								69.9%
							
						
							
								
								
									Python
								
								28.9%
							
						
							
								
								
									CMake
								
								1.2%