非重复极端安全随机数发生器?

时间:2018-05-09 19:02:10

标签: android random

我想为一些产品验证生成5位数极端安全的随机数,这些产品应该始终是唯一的,它们无限制在一天中或在一周内多少次我将此请求用于新一代手册代码,它可以在1k - 20k的范围内,主要要求是手动代码必须始终是独特的(没有重复),否则它们将是一个大的冲突。

所以请给我一个更好,更安全的方法来生成5位数的唯一代码, 任何建议都会非常有用。

现在我正在使用这个reffrence:

private static final Random random = new Random();
private static final String CHARS = "abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ234567890!@#$";

public static String getToken(int length) {
StringBuilder token = new StringBuilder(length);
for (int i = 0; i < length; i++) {
    token.append(CHARS.charAt(random.nextInt(CHARS.length())));
}
return token.toString();
}

0 个答案:

没有答案