我正在尝试使用线性同余生成器生成 48 个伪随机数。我只使用从 a 到 z 的字母作为我的明文,用于映射 0 到 25。
我正在使用下面的线性同余生成器的算法
Xn+1 = (aXn + c) mod m
其中 Xn 是伪随机值的序列,并且
• Modulus: m, 0 < m
• Multiplier: a, 0 < a < m
• Increment: c, 0 ≤ c < m
• Seed: X0, 0 ≤ X0 < m
我正在使用下面的线性同余生成器的算法
Xn+1 = (aXn + c) mod m
X2 = (7(11) + 11) mod 18 = 16
X3 = (7(16) + 11) mod 18 = 15
X4 = (7(15) + 11) mod 18 = 8
种子、增量、乘数和模数的推荐值是多少。密钥流需要从 0 到 26,因为我需要将数字映射到相应的字母。我想要独特的和更少的重复。
请多多指教。
谢谢