java生成密码字典
密码字典
- 话不多说全是干货
话不多说全是干货
/*** 密码字典*/
public class DictionarySeek {//密码可能会包含的字符集合private static char[] fullCharSource = { '1','2','3','4','5','6','7','8','9','0','a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z','A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z','~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '{', '}', '|', ':', '"', '<', '>', '?', ';', '\'', ',', '.', '/', '-', '=', '`'};
// //密码可能会包含的字符集合
// private static char[] fullCharSource = { '1','2','3','4','5','6','7','8','9','0',
// 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
// 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
// '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '{', '}', '|', ':', '"', '<', '>', '?', ';', '\'', ',', '.', '/', '-', '=', '`'};//将可能的密码集合长度private static int fullCharLength = fullCharSource.length;//maxLength:生成的字符串的最大长度public static void generate(int maxLength) throws FileNotFoundException, UnsupportedEncodingException {//计数器,多线程时可以对其加锁,当然得先转换成Integer类型。int counter = 0;StringBuilder buider = new StringBuilder();PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream("C://密码字典"+maxLength+".txt"), "utf-8"));while (buider.toString().length() <= maxLength) {buider = new StringBuilder(maxLength*2);int _counter = counter;//10进制转换成26进制while (_counter >= fullCharLength) {//获得低位buider.insert(0, fullCharSource[_counter % fullCharLength]);_counter = _counter / fullCharLength;//处理进制体系中只有10没有01的问题,在穷举里面是可以存在01的_counter--;}//最高位buider.insert(0,fullCharSource[_counter]);counter++;pw.write(buider.toString()+"\n");System.out.println(buider.toString());}}public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException {System.out.print("生成的字典位置:D://密码字典.txt"+"\n"+"请输入你需要生成的字典位数:");Scanner sc = new Scanner(System.in);int x = sc.nextInt();DictionarySeek.generate(x);}
}
如果你觉得实用就请我吃个馒头吧!点个赞也行!!!
java生成密码字典相关推荐
- Python生成密码字典写入文件算法
Python生成密码字典写入文件算法 简介 主要原理 代码 如果有其他可以提高时空复杂度的算法可以优化一下 简介 密码字典生成原理比较简单,主要靠正常的按序叠加生成,故所需时间以及较大的内存资源 主要 ...
- python创建一个字典、保存用户名和密码_Python实现生成密码字典的方法示例
本文实例讲述了Python实现生成密码字典的方法.分享给大家供大家参考,具体如下: key_data.py 文件存放组成数据,可以随时扩充及简化. #coding=utf-8 #!/usr/bin/p ...
- 基于Java语言密码字典生成器实现
作者 | 顾北 对这个世界充满向往的理想主义者 利用Java生成穷举字典(数字+字母(大小写)+字符),可用于爆破各种密码等场景,原理枚举数组中元素的各种组合情况. 用户可根据需要自由选择生成字典的长 ...
- java数字密码字典生成器
直接上代码,如有不足请指出 import java.io.*;/*** 描述:*java代码实现的字典生成器,新手写的,有不足之处可以指出*写个main()调用即可,create方法的参数为文件存储的 ...
- php 生成密码字典,密码字典生成工具crunch的简单使用
案例1: crunch 1 8 #生成最小1位,最大8位,由26个小写字母为元素的所有组合 案例2: crunch 1 6 abcdefg #生成最小为1,最大为6.由abcdefg为元素的所有组合 ...
- java生成密码_java生成密码生成 | 学步园
一.根据当前日期生成MD5加密密码 package com.test; import java.security.MessageDigest; import java.text.SimpleDateF ...
- Python生成密码字典教程
首先声明:本教程只用于技术交流,请勿用于非法用途.请严格遵循相关法律法规. 晚上莫名想要折腾一下aircraft,虽然本学校用的网络是校园网,破解了wifi也不能直接用,还得破解别人的账号密码,但是这 ...
- java生成密码规则 形似校验规则
最近接到一个需求,按照一定的规则自动生成密码,并且要校验密码的规则和形似规则,网上搜了一下没找到我想到的形似规则处理方式,只能自己动手尝试写写了. 密码规则: 口令至少由8-20位大写字母.小写字母. ...
- java根据密码字典解密word和excel加密文件
本类为word解密的工具类,后期还会有压缩包的加密解密,以及暴力破解相关方法,喜欢的朋友可以关注我的后期更新,尊重原创,切勿胡乱转发 /** * @Description word破解工具类* * ...
- 自写密码字典-解口令具体过程(海德拉)
本次实验应用kali(crunch创建 hydra工具进行破解) 一.本文仅限于学习,以下操作仅测试使用,切勿用于生产环境. 1.过程准备一台kali虚拟机,一台win(IP:192.168.174. ...
最新文章
- 临河智慧城管:让城市更和谐
- ubuntu14.04下出现libmysqlclient.so.20找不到问题
- 奇异值的物理意义是什么?
- java开发必背API
- stm32L0工程建立(HAL+IAR,无cubemx)
- IE7.0默认主页修改
- 网页打开微信链接 无法返回
- php js 比较,PHP与JS的比较
- 自定义控件实现(转)
- spring什么版本支持java8_升级spring4.1.6和支持java8
- golang 模板 tpl 算术运算_高考数学常设的32个命题陷阱,七成同学中招失分!文末附数学疑难题(精品)模板!...
- Silverlight 自定义表格 转
- SCOvs. IBM 最新判决出炉,SCO再败
- 【NOIP2016提高A组模拟10.15】算循环
- BestCoder Round #81 (div.2) B Matrix
- [转]SQL操作全集
- Java数据结构——用链表实现栈
- java如何实现联网象棋代码_java中国象棋联网对战源码
- 寻找春天 九宫格日记-2012.09.22
- u盘芯片 测试软件,U盘芯片检测工具(Chip Genius)