Verhalten von SecureRandom
Obwohl nach vielen Artikeln aufSecureRandom
Ich bin auf einen Zweifel bei der Verwendung von gestoßenSecureRandom
Sicherheits-API in Java. Im folgenden Beispiel.
public class SecureRandomNumber {
public static void main(String[] args) throws NoSuchAlgorithmException {
TreeSet<Integer> secure = new TreeSet<Integer>();
TreeSet<Integer> unSecure = new TreeSet<Integer>();
SecureRandom sr = new SecureRandom();
byte[] sbuf = sr.generateSeed(8);
ByteBuffer bb = ByteBuffer.wrap(sbuf);
long d = bb.getLong();
sr.setSeed(d);
Random r = new Random();
r.setSeed(System.nanoTime());
for (int k = 0; k < 99999; k++) {
int i = sr.nextInt();
if (!secure.add(i)) {
System.out.println("Repeated Secure Random Number");
} else {
// System.out.println("************Unique***********");
}
int j = r.nextInt();
if (!unSecure.add(j)) {
System.out.println("Repeated UnSecure Random Number");
}
}
}
}
Wenn ich dieses Programm ausführe, finde ich keinen zusätzlichen Vorteil bei der Verwendung vonSecureRandom
da es fast das gleiche ergebnis gibt.
Kann mir jemand mitteilen, ob ich hier das Richtige tue?