资源简介
这个程序在linux平台下编译,可以破解全系的PDF加密文档。破解方式是口令字典破解。默认情况是pdf9以下版本的破解,但其实pdf9.10.11等更高版本都是一样的,在主程序里吧版本限制修改,所有版本的PDF文档都是可以破解
代码片段和文件信息
/**
* Copyright (C) 2006-2015 Henning Norén
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not write to the Free Software
* Foundation Inc. 51 Franklin Street Fifth Floor Boston MA 02110-1301
* USA.
*/
#include
#include
#include
#include
#include
#include
#include “benchmark.h“
#include “common.h“
#include “md5.h“
#include “rc4.h“
#include “sha256.h“
#include “pdfcrack.h“
#define COMMON_MD5_SIZE 88
#define COMMON_SHA256_SIZE 40
#define COMMON_SHA256_SLOW_SIZE 56
#define BENCHINTERVAL 3 /** The interval to run the specific benchmarks */
static volatile bool finished = false;
/** interruptBench is used to stop the current benchmark */
static void
interruptBench() {
finished = true;
}
/** print_and_clean was supposed to make the binary somewhat smaller but
I think I failed and have not bothered to investigate it further (like
checking if the function is inlined or if one can force it to not be
inline). As this stuff is pretty boring and not critical to performance I
would prefer that all the boring stuff between benchmarks would be as
small as possible.
*/
static void
print_and_clean(const char *str unsigned int nrprocessed
const clock_t *start const clock_t *end) {
printf(“%s\t%.1f\n“ str
nrprocessed/(((double)(*end-*start))/CLOCKS_PER_SEC));
cleanPDFCrack();
finished = false;
}
static void
sha256_bench(void) {
uint8_t *buf;
uint8_t hash[32];
unsigned int nrprocessed = 0;
clock_t startTime endTime;
buf = calloc(COMMON_SHA256_SLOW_SIZE sizeof(uint8_t));
alarm(BENCHINTERVAL);
startTime = clock();
while(!finished) {
sha256f(buf COMMON_SHA256_SIZE hash);
buf[0]++;
nrprocessed++;
}
endTime = clock();
print_and_clean(“SHA256 (fast):\t“ nrprocessed &startTime &endTime);
buf[0] = 0;
nrprocessed = 0;
alarm(BENCHINTERVAL);
startTime = clock();
while(!finished) {
sha256(buf COMMON_SHA256_SLOW_SIZE hash);
buf[0]++;
nrprocessed++;
}
endTime = clock();
print_and_clean(“SHA256 (slow):\t“ nrprocessed &startTime &endTime);
free(buf);
}
static void
md5_bench(void) {
uint8_t *buf;
uint8_t digest[16];
unsigned int nrprocessed = 0;
clock_t startTime endTime;
buf = calloc(COMMON_MD5_SIZE sizeof(uint8_t));
alarm(BENCHINTERVAL);
startTime = clock();
while(!finished) {
md5(buf COMMON_MD5_SIZE d
- 上一篇:servo.slx
- 下一篇:PS2主板双联双位键盘鼠标插座PCB封装AD
相关资源
- SAS 9.3免费 破解版 安装链接
- IBM Rational 全套 License 破解 upd
- 论文研究-多光谱人脸活体检测特征研
- 论文研究-基于手势的人机交互系统
- 论文研究-一种新型的LDPC译码器设计
- 研究论文-基于线性二次型调节器的神
- 论文研究-分布式空时编码的实现和研
- 论文研究-基于无线传感器网络的山体
- 论文研究-基于UML的高校就业管理系统
- 论文研究-基于改进的Canny算子的焊缝
- 清华天河pccad201564位中文正式特别版(
- 论文研究-CT图像中冠脉血管钙化斑块
- 论文研究-基于ARM的嵌入式网络视频监
- 论文研究-基于回声状态神经网络的脑
- 论文研究-基于混合反馈型回声状态网
- 论文研究-基于OpenStack云平台的门户系
- 论文研究-基于卷积神经网络的城市交
- 使用MSP430产生PWM波对直流电动机进行
- 论文研究-基于TMS320F2812的数据采集系
- 论文研究-基于质心检测算法的文本数
- 论文研究-基于OpenFlow的SDN网络路由算
- 论文研究-智能水下机器人滑模控制研
- 基于遗传算法的小波神经网络交通流
- 瑞萨电子经济型仿真器E2Lite.pdf
- 论文研究-使用伪随机序列的扩频通信
- 论文研究-基于FPGA的全数字锁相环的设
- 论文研究-无线传感器网络路由算法综
- 论文研究-FPGA与DSP的高速链路口通信设
- 论文研究-基于MIMO-OFDM可见光通信系统
- 论文研究-基于链接聚类的PageRank算法
评论
共有 条评论