package password;
import java.util.Random;
/**
* @author 丛培雪 E-mail:congpeixue@126.com
* @version 创建时间:2008-6-9 下午08:34:37 类说明
*/
public class PasswordGenerator {
public static void main(String[] args) throws Exception {
PasswordGenerator passwordGenerator = new PasswordGenerator();
for (int i = 20; i <= 100; i++) {
System.out.println(passwordGenerator.generate(PRINTABLE_CHARACTERS,
i));
}
}
protected Random m_generator = new Random();
public static final String DIGITS = "0123456789";
public static final String LOCASE_CHARACTERS = "abcdefghijklmnopqrstuvwxyz";
public static final String UPCASE_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static final String PRINTABLE_CHARACTERS = DIGITS
+ LOCASE_CHARACTERS + UPCASE_CHARACTERS;
public String generate(String chars, int passLength) throws Exception {
if (passLength > chars.length()) {
throw new Exception("Password generation is imposible");
}
char[] availableChars = chars.toCharArray();
int availableCharsLeft = availableChars.length;
StringBuffer temp = new StringBuffer(passLength);
for (int i = 0; i < passLength; i++) {
int pos = (int) (availableCharsLeft * m_generator.nextDouble());
temp.append(availableChars[pos]);
// 出现过的下一次就不会出现了
availableChars[pos] = availableChars[availableCharsLeft - 1];
// 替换其他单词的单词将不会出现2遍以上,防止增加后面单词的出现几率
--availableCharsLeft;
}
return String.valueOf(temp);
}
}
分享到:
相关推荐
password generate , numeric , alfabetic
noPassword 一个密码生成器,用于生成随机字符密码,使用golang编写,可生成多平台二进制可执行程序 简单描述 这是一个简单的密码生成工具,目的在于为每个需要登录的应用设置自己的不同的密码,且不在任何地方存储...
Generate Password class,根据指定规则生成password 功能: 1.可设定密码长度。 2.可设定要生成的密码个数,批量生成。 3.可以指定密码的规则,字母,数字,特殊字符等。
$ npm install generate-password --save 用法 generate([options]) 使用给定的选项生成一个密码。 返回一个字符串。 var generator = require ( 'generate-password' ) ; var password = generator . generate ( ...
在"generatepassword-main"这个文件夹中,可能包含以下文件和目录: - `index.html`:网页的HTML结构,用于展示界面元素。 - `style.css`:CSS样式文件,定义页面的布局和视觉效果。 - `script.js`:JavaScript源...
(or length range), the character set to be used to generate the passwords, and a couple of other options - You can select the custom character set for brute-force attack (non-English characters are...
const generateMemorablePassword = require('generate-memorable-password'); generateMemorablePassword(); // granite-extensible-nugget-6769 generateMemorablePassword(); // concerned-sleek-towels-5333 ...
描述 ... ... resetPass userSelectType addChoices writePassword generatePassword ... 在generatePassword中,for循环与math.random一起使用,以从新阵列中随机选择已确认的字符,然后通过writePas
对于这个项目,我一直在努力寻找其布局。 一开始,我对如何构建它感到困惑。 我从github上看到了很多设计,然后决定混合搭配。 *我面临的挑战 ...Windows警报方法在chrome上无法正常运行,因此不得不寻找其他方法-当我...
在本“mybatis generate自动生成demo”中,我们将探讨如何基于MySQL数据库使用MBG进行代码生成。 首先,MBG的核心在于它的配置文件,通常命名为`generatorConfig.xml`。这个文件定义了数据库连接信息、需要生成代码...
function generatePassword(length) { var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()'; var password = ''; for (var i = 0; i ; i++) { password += chars.charAt...
- The program is customizable: you can set the password length (or length range), the character set to be used to generate the passwords, and a couple of other options - You can select the custom ...
严格密码生成器生成具有严格要求的随机密码安装$ npm install strict-password-generator --save用法const ...选项将选项对象传递给passwordGenerator.generatePassword() 可能的特殊字符:['!','@','#','$
在Maven中,你可以在pom.xml中添加`mybatis-generator-maven-plugin`,然后运行`mvn mybatis-generator:generate`命令。 7. **版本兼容性**: 确保MBG版本与MyBatis和数据库驱动版本兼容,避免出现不兼容的问题。 ...
本主题将深入探讨如何在IDEA中实现MyBatis的自动代码生成(generateConfig),并介绍所需的相关工具和步骤。 一、MyBatis简介 MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。与传统的...
MybatisGenerate是一个强大的Mybatis代码生成工具,它极大地简化了开发者在使用Mybatis框架时的手动编码工作。MybatisGenerator可以自动生成Model类、Mapper接口和XML配置文件,从而节省了大量时间,提高了开发效率...
//将密码写入#password输入函数writePassword(){var password = generatePassword(); var passwordText = document.querySelector(“#password”); passwordText.value =密码; } //添加事件监听器以生成...
password = generate_password(length, use_numbers, use_letters, use_special_chars, allow_duplicates) print(password) ``` `ch_password_generator`库可能还提供了其他高级功能,如自定义字符集、生成符合特定...
密码库使用添加按钮保存您的用户名/电子邮件,密码和网站。... 使用generate还将密码复制到剪贴板。 搜索按钮也是如此。 这最初是由安琪拉·于(Angela Yu)在她的100天:完整的python训练营课程中完成的
生成password.strong密码。 强密码是保护您的个人信息和资产在线的关键您的新密码:记住您的密码:记住您在本句中每个单词的第一个字符的密码。 为防止您的密码被社会工程,蛮力或字典攻击方法被攻击,并保留您的...