Java中的密码生成
我想要一个使用JAR文件的Java密码生成器,它应该符合标准密码规则。 如果它是开源的,那就太好了。有什么建议吗 谢谢试试这个:JPWGENJava中的密码生成,java,security,Java,Security,我想要一个使用JAR文件的Java密码生成器,它应该符合标准密码规则。 如果它是开源的,那就太好了。有什么建议吗 谢谢试试这个:JPWGEN private static final String charset=“0123456789abcdefghijklmnopqrstuvwxyz”; 公共静态字符串getRandomPassword(整数长度){ Random rand=新的Random(System.currentTimeMillis()); StringBuilder sb=新的St
private static final String charset=“0123456789abcdefghijklmnopqrstuvwxyz”;
公共静态字符串getRandomPassword(整数长度){
Random rand=新的Random(System.currentTimeMillis());
StringBuilder sb=新的StringBuilder();
for(int i=0;i
对acegi security进行一番抨击。然后像这样使用它:
public class SomeClass {
private PasswordEncoder passwordEncoder;
// other code
public String generatePassword() {
byte[] ab = new byte[1];
Random r = new Random();
r.nextBytes(ab);
return passwordEncoder.encodePassword(new String(ab), null).substring(24);
}
}不到一个月前,有人问了同样的问题: 这个也很相似: 这个也是:
以前的一些研究总是很好的定义“标准密码规则”。此外,根据常见问题,您已经对此进行了哪些研究?例如,你有没有谷歌“java密码生成器”呢?没有标准的密码规则。如果有的话,不要使用标准的密码生成器;)我想他需要一些数字符号和字母组合之类的东西,最少8个字符。@Andreas_D。我不明白为什么那样会不好。@Andreas_D。仍然不明白重点。让我们假设你有一个页面,你说“输入密码,你的密码应该至少有X个字符,你应该有…”。然后,任何人都可以创建一个程序,生成所有可能的密码,因此,如果没有根据规则生成安全密码的可能性,您就不会购买任何东西。您只需要确保生成器没有使用可预测的种子。请记住,即使加密库也可以与源代码一起使用,但这并不会降低它们的安全性。大写字母呢?为了确保至少有一个大写,一个数字,一个小写?
public class SomeClass {
private PasswordEncoder passwordEncoder;
// other code
public String generatePassword() {
byte[] ab = new byte[1];
Random r = new Random();
r.nextBytes(ab);
return passwordEncoder.encodePassword(new String(ab), null).substring(24);
}