java自动生成复杂的新密码,强密码。
2008-01-30 14:28
549 查看
写了几次BLOG,看得人多,用的人多,就是没人回复,没有一点成就感,今天写了一个强密码的类,不详细说明了,自己看吧。。谢谢
package test;
public class NewPassword {
public static void main(String[] args) {
String[] pswdStr = { "qwertyuiopasdfghjklzxcvbnm",
"QWERTYUIOPASDFGHJKLZXCVBNM", "0123456789",
"~!@#$%^&*()_+{}|<>?:{}" };
int pswdLen = 6;
String pswd = " ";
char[] chs = new char[pswdLen];
for (int i = 0; i < pswdStr.length; i++) {
int idx = (int) (Math.random() * pswdStr[i].length());
chs[i] = pswdStr[i].charAt(idx);
}
for (int i = pswdStr.length; i < pswdLen; i++) {
int arrIdx = (int) (Math.random() * pswdStr.length);
int strIdx = (int) (Math.random() * pswdStr[arrIdx].length());
chs[i] = pswdStr[arrIdx].charAt(strIdx);
}
for (int i = 0; i < 1000; i++) {
int idx1 = (int) (Math.random() * chs.length);
int idx2 = (int) (Math.random() * chs.length);
if (idx1 == idx2) {
continue;
}
char tempChar = chs[idx1];
chs[idx1] = chs[idx2];
chs[idx2] = tempChar;
}
pswd = new String(chs);
System.out.println(pswd);
}
}
package test;
public class NewPassword {
public static void main(String[] args) {
String[] pswdStr = { "qwertyuiopasdfghjklzxcvbnm",
"QWERTYUIOPASDFGHJKLZXCVBNM", "0123456789",
"~!@#$%^&*()_+{}|<>?:{}" };
int pswdLen = 6;
String pswd = " ";
char[] chs = new char[pswdLen];
for (int i = 0; i < pswdStr.length; i++) {
int idx = (int) (Math.random() * pswdStr[i].length());
chs[i] = pswdStr[i].charAt(idx);
}
for (int i = pswdStr.length; i < pswdLen; i++) {
int arrIdx = (int) (Math.random() * pswdStr.length);
int strIdx = (int) (Math.random() * pswdStr[arrIdx].length());
chs[i] = pswdStr[arrIdx].charAt(strIdx);
}
for (int i = 0; i < 1000; i++) {
int idx1 = (int) (Math.random() * chs.length);
int idx2 = (int) (Math.random() * chs.length);
if (idx1 == idx2) {
continue;
}
char tempChar = chs[idx1];
chs[idx1] = chs[idx2];
chs[idx2] = tempChar;
}
pswd = new String(chs);
System.out.println(pswd);
}
}
相关文章推荐
- Java密码加密,UUID自动生成主键
- [原创]Java自动批量生成密码的源代码
- java 自动生成密码
- java中自动生成编码
- JAXB注解 java 关于xml的注解,自动生成xml文件
- 利用Excel的vba脚本根据数据库表结构自动生成java的action,bean,dao,mode,service,xml,sql,jsp等
- Java将SQLServer数据库表自动生成类
- Java 动态生成复杂 Word
- 在MyEclipse的web项目/java项目中,使用Hibernate-tools中的hbm2java和hbm2ddl工具,根据hbm文件自动生成pojo和数据库脚本
- java生成随机密码的一个方法
- java邮件开发详解笔记(生成内嵌图片的复杂邮件)
- MyBatis自动生成Java/C#的Bean(Entity)的等价MYSQL实现函数
- 哪些年遇到过的Andriod问题(9)R.java文件不能自动生成解决方法
- java工具类–自动将数据库表生成javabean
- eclipse中R.java不能自动生成id
- 导入android源码有错,R.java文件不能自动生成解决方法
- SQL Server 自动生成卡号和密码
- 用java代码自动生成数据库表
- JAXB注解 java 关于xml的注解,自动生成xml文件
- JAXB注解 java 关于xml的注解,自动生成xml文件 - @XML***