资源简介
这个程序在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
相关资源
- 奶瓶(beini)无限免费破解增强版 使
- VL53L0X中文资料.pdf
- visio软件64位破解版本
- Adobe cc 2018 全套破解版 ps pr等
- UsbTrace v2.8.0.80 64位和32位破解版
- IRPTrace 破解版
- 《赛普拉斯 接近传感器》pdf
- BMA250手册word和PDF(博文配到资源)
- PDF 彩色转黑白插件.rar
- the_definitive_guide_to_linux_network_programm
- Concurrency in Go(EarlyRelease) 无水印p
- Protel dxp 2004 安装与破解教程
- 一种用于轴承故障诊断的迁移学习模
- Assembly Language for x86 Processors (7th Ed
- 《THE ONE-PAGE PROJECT MANAGER FOR EXECUTION(
- 《emwin实战指南(基于STM32-ISO开发板)
- SourceInsight 4.0.0096破解
- 破解source insight4.00.0096
- SourceInsight 破解版3264
- Source Insight 4.0.0080破解文件 替换lic
- 水晶排课 11.53 破解版
- 水晶排课(排课表软件)v11.55特别版
- Beginning STM32: Developing with FreeRTOS libo
- pdfbox所需jar包
- MODERN ROBOTICS MECHANICS PLANNING AND CONTROL
- 3新概念模拟电路-运放电路的频率特性
- ENVI 5.0 sp3 - 64 Bit 破解
- IAR FOR 430 破解工具
- radmin3.5.2.1完美破解版(支持win10)8
- Rational Rose Common破解文件
评论
共有 条评论