7.2.3. DSS Pseudo-random Number Generation (DSS伪随机数生成)
7.2.3. DSS Pseudo-random Number Generation (DSS伪随机数生成)
数字签名标准 (DSS) [DSS] 规定为每个签名使用新的随机或伪随机整数。它建议以下技术用于生成这样的整数, 但没有要求它。类似的技术可以用于其他目的。
该技术假设您已经有一个称为种子的秘密随机数种子, 并且需要一系列数字。用G(t, c)表示函数, 其中t是用于初始化SHA-1的基本种子材料, c是一个整数计数器, 并且函数是通过以下方式计算的:
1. t 和 c 被转换为比特串T和C。
2. G(t, c) = SHA-1(T | C), 其中 | 表示连接。
这会产生一个160比特的输出G(t, c)。此输出可以用作伪随机数或作为种子用于生成更多的伪随机数。这种方法的一个变体是使用HMAC-SHA1而不是纯SHA-1。