类型: 安全缺陷

    Java API中提供了java.util.Random类实现PRNG(),该PRNG是可移植和可重复的,如果两个java.util.Random类的实例使用相同的种子,会在所有Java实现中生成相同的数值序列。

    例如:下面代码片段中,使用了java.util.Random类,该类对每一个指定的种子值生成同一个序列。

    1. import java.util.Random;
    2. // ...
    3. public static void main (String args[]) {
    4. // ...
    5. for (int i = 0; i < 10; i++) {
    6. Random random = new Random(123456);
    7. int number = random.nextInt(21);
    8. ...
    9. }
    10. }