资源简介
C语言实现 , 内置源码 , 通过外部config.txt进行相关配置 , 暴力破解是基于 7z 的压缩引擎 所以文件内的 7z.exe 不可以少 . 字符集可以自定义 注意字符顺序影响着破解效率
代码片段和文件信息
#include
#include
#include
#include
using namespace std;
typedef struct Config{
char unrarFile[256];
char targetFile[256];
int minLength;
int maxLength;
char charSet[256];
int charSetSize;
}Config;
//获取配置文件
Config getConfig(){
Config c;
ifstream fin(“config.txt“);
if(!fin.is_open())
{cout<<“配置文件加载失败“< while(!fin.eof()){
char cbuf[256];
fin.getline(cbuf255);
string sbuf = cbuf;
if(sbuf==“[解压引擎地址]“)
{
fin.getline(c.unrarFile255);
}
else if(sbuf==“[目标文件地址]“)
{
fin.getline(c.targetFile255);
}
else if(sbuf==“[最小密码长度]“)
{
fin.getline(cbuf255);
c.minLength = atoi(cbuf);
}
else if(sbuf==“[最大密码长度]“)
{
fin.getline(cbuf255);
c.maxLength = atoi(cbuf);
}
else if(sbuf==“[密码字符集]“)
{
fin.getline(c.charSet255);
sbuf = c.charSet;
c.charSetSize = sbuf.length();
}
else{
cout<<“配置文件内容有误:“< cout< exit(1);
}
}
fin.close();
return c;
}
//测试压缩包
bool test(string targetFilestring passwordstring unrarFile){
string cmd = unrarFile+ “ t -P“+password+“ “+targetFile+“ >log.txt“;
if(system(cmd.c_str()) == 0 )
return true;
return false;
}
//递归函数
void func(Config *cstring passwordint currentint target) {
if(current==target){
system(“cls“);
cout<<“当前尝试长度: “< cout<<“当前尝试密码: “< cout<<“---------------------“< if(test(c->targetFilepasswordc->unrarFile)){
system(“cls“);
cout<<“破解成功:“< system(“pause“);
exit(0);
}
return;
}
for(int i=0;icharSetSize;i++){
string newPassword = password + c->charSet[i];
func(cnewPasswordcurrent+1target);
}
}
//开始破解
void start(Config c){
system(“cls“);
cout<<“开始破解..“< string password=““;
for(int i=c.minLength;i<=c.maxLength;i++){
func(&cpassword0i);
}
}
int main(){
cout<<“正在装载配置文件...“< Config c = getConfig();
system(“cls“);
cout<<“配置文件装载成功.....“ < <<“引擎地址: “< <<“目标地址: “< <<“最大长度: “< <<“最小长度: “< <<“字 符 集: “< cout<<“是否开始破解?“;
char i=‘N‘;
cin>>i;
if(i==‘Y‘)
start(c);
cout<<“破解失败请尝试扩展字符集或增加密码长度“< system(“pause“);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 446976 2016-10-04 22:51 RAR暴力破解\7z.exe
文件 128 2018-02-02 17:43 RAR暴力破解\config.txt
文件 367 2018-02-02 17:52 RAR暴力破解\log.txt
文件 2585 2018-02-02 17:41 RAR暴力破解\unlock.cpp
文件 2007465 2018-02-02 17:41 RAR暴力破解\unlock.exe
目录 0 2018-02-03 20:07 RAR暴力破解
----------- --------- ---------- ----- ----
2457521 6
- 上一篇:酒店客房预定系统vc++)
- 下一篇:c++实现ECC加解密
相关资源
- 打地鼠 源码
- C++信号放大器+报告+源码+运行程序
- vc++变成经典小游戏源码
- 模式识别 印章识别 印鉴识别 源码
- 精通VC++指纹模式识别系统算法(源码
- word2vec词向量训练及中文文本相似度计
- C++学生成绩管理系统( 毕业设计)
- C语言c++游戏源代码大全
- 主站104规约源码
- c++P2P视频技术源码(VC++)
- 大漠插件的模仿插件天使插件源码
- c++ 源码通过dll启动应用程序exe
- c++stl标准库源码
- 12864液晶图片取模软件.rar
- 03 C#与C++dll互相传递字符串.rar
- FU6831.rar
- 即时通讯开发源码终极版C#.NETC++都有
- NOIP2019csp-j 初赛普及组 C++试题及答案
- 《测试驱动的嵌入式C语言开发》源码
- 树莓派智能小车开发C语言源码
- 植物大战僵尸外挂源码
- vc 视频会议系统v2.8 源码
- 标准C++STL源码剖析(侯捷著)(非扫
- celrityC/C++源码查看工具
- (部分源码)百分百仿360安全卫士界
- puma560的运动学正解和逆解的C++源码
- sm2算法源码实现
- 剑灵辅助源码
- c语言标准库源码大全
- QT5.9_c++开发指南——随书[源码]
评论
共有 条评论