mirror of
https://gitee.com/dromara/MaxKey.git
synced 2025-12-08 01:48:33 +08:00
Update PasswordGen.java
This commit is contained in:
parent
bdf4fa5772
commit
ad2dbb1c7c
@ -17,6 +17,9 @@
|
||||
|
||||
package org.maxkey.crypto.password;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
@ -69,8 +72,9 @@ public class PasswordGen {
|
||||
password.append(gen(CHAR_UPPERCASE, upperCase));
|
||||
password.append(gen(CHAR_SPECIAL, special));
|
||||
password.append(gen(CHAR_DEFAULT, length - lowerCase - upperCase - numbers -special));
|
||||
|
||||
// random generator String by sequence password
|
||||
return gen(password.toString(), password.length());
|
||||
return shuffle(password.toString());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -95,4 +99,22 @@ public class PasswordGen {
|
||||
}
|
||||
return password.toString();
|
||||
}
|
||||
|
||||
public String shuffle(final String charString) {
|
||||
StringBuffer password = new StringBuffer("");
|
||||
List<String> list = new ArrayList<String>();
|
||||
for (int i = 0; i < charString.length(); i++) {
|
||||
list.add(charString.charAt(i) + "");
|
||||
}
|
||||
|
||||
for (int i = 0; i < length / 2; i++) {
|
||||
Collections.shuffle(list);
|
||||
}
|
||||
|
||||
for(String chr : list) {
|
||||
password.append(chr);
|
||||
}
|
||||
return password.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user