9.1.2 利用EncryptPDF破解PDF加密文件
EncryptPDF是一款专门用于PDF文件加密的软件,下载地址为 encryptpdf /encryptpdf.exe,破解PDF文件的具体操作步骤如下:
① 下载该软件后,双击encryptpdf.exe文件,则显示如图9-1-7所示的对话框。单击【是】按钮,然后按安装向导提示安装即可。
② 安装完毕后,即可运行该程序,其操作界面如图9-1-8所示。
图9-1-7 继续安装 图9-1-8 EncryptPDF操作界面
③ 单击【Setting】按钮,打开【Encrypt PDF Options】对话框,用户可以设置打开PDF文件时的密码以及修改文件时的密码,如图9-1-9所示。此外,用户还可以选择密码的加密方式及限制其它 操作的一些选项:选取【No Printing】复选框,则加密后的文件不能打印输出;选取【No Changing the Document】复选框,则不能修改加密后的文件;选取【No Content Copying or Extraction】复选框,则不能从加密后的文件中复制内容;选取【No Adding or Changing Form Fields】复选框,则不能增加或修改加密文件中的表格框架。
图9-1-9 设置EncryptPDF选项
④ 设置好各选项后,单击【Open PDF(S)】按钮,则弹出【Encrypt PDF】对话框,如图9-1-10所示。
⑤ 选择需要加密的文件,单击【打开】按钮,然后在【另存为】对话框中输入新的文件名,单击【保存】按钮即可生成加密后的文件。如果不想保存原文件,则可将原文件删除,只保留加密后的文件。
图9-1-10 选择需要加密的文件 图9-1-11 【口令】对话框
此时用Adobe Reader打开加密的文件时,将出现如图9-1-11所示的【口令】对话框。只有在输入正确口令后,才能打开该文件。
【提示】
使用Encrypt PDF加密后,加密过的文件不能再次使用Encrypt PDF加密,当然也不能用其取消已经生效的口令。
9.1.3 利用EAdvanced PDF Password Recovery破解PDF加密文件
Advanced PDF Password Recovery(简称AEPR)是一款专门用于破解PDF文件保护措施的工具软件,它能够方便去除PDF文件内在的保护。该软件的安装方法非常简单,就 不再赘述了。APPR与前面用于解密WinZip的Advanced ZIP Password Recovery是同一系列的工具,在操作上和解密特性上都类似。
具体破解的操作步骤如下:
① 安装完成后,双击桌面上的【Advanced PDF Password Recovery Pro 1.70 汉化版】图标,即可启动该程序,如图9-1-12所示。
图9-1-12 Advanced PDF Password Recovery操作界面
② 单击 按钮,可在打开的对话框中选择需要解密的PDF文件,单击 按钮可将去除密码后的PDF文件直接以一个新的文件名保存到用户指定的文件夹中。
③ 在【攻击类型】下拉列表框中,用户可以选择【暴力攻击】、【掩码】、【字典文件】、【密码搜寻】等破解方式。
④ 在【范围】选项卡中,用户可以设置暴力攻击的范围;在【长度】选项卡中可以设置密码长度的范围;在【字典文件】选项卡中,用户可以选择破解时所使用的字典 文件;在【密码搜寻】选项卡中,用户可以设置密码搜寻的范围;在【自动保存】选项卡中,用户可以设置自动保存的时间间隔、保存的文件名及文件夹;在【选 项】选项卡中,用户可以设置使用该软件时的各种选项。
因为笔者使用的是一个汉化版,因此可以在【语言】下拉列表框选择【简体中文】选项,使该软件的操作界面变成中文界面;在【高级】选项卡中,用户可以选择【任何密码】、【用户密码】、【所有者密码】等选项。
⑤ 设置好所有选项后,单击【开始!】按钮,即可按用户设置的选项开始破解,并给出最终提示。
⑥ 要去除“禁止打印”、“禁止内容复制”等限制,只要单击【解密】按钮 即可。如果文件没有被加密,则APPR会显示“This document is not encrypted”,表示文件未被加密;如果文档是一个加密的PDF文件,且没有设置密码保护,则出现【另存为】窗口,只要输入解密后的文件即可。
⑦ 如果文件被设置了密码保护,则只能通过搜索密码的方式来获得密码,否则将无法对PDF文件解密;搜索密码的操作方法与Advanced ZIP Password Recovery类似,请参见前面的章节。
9.1.4 利用PDF Password Remover解除PDF文件口令
PDF Password Remover是一款与EncryptPDF配套使用的,专门用于解除PDF密码的软件。其操作界面与操作方法都与EncryptPDF相似,如图9-1-13所示。
具体操作步骤如下:
① 单击【打开PDF文件】按钮,选择需要解除密码的PDF文件。
② 单击【打开】按钮,然后再在【文件名】文本框中输入一个新的文件名,单击【保存】按钮,则显示如图9-1-14所示的对话框,输入【用户密码】和【所有者密码】后,单击【确定】按钮。
③ 如果输入密码正确则可以解除密码;如果输入密码不正确,则提示密码不正确,不能解除密码。
图9-1-13 PDF Password Remover操作界面 图9-1-14 输入密码
有什么方法可以较好地保护自己的PDF文件吗?
按 照要求设置需要保护的选项,如“禁止打印”,“禁止提取内容”等,然后设置一个好口令,所谓好的口令就是一个足够长,含有大小写字母和数字且难猜的口令。 一个好的建议是:构造一个易理解但难猜的短句,方便记忆,同时又有好的加密效果,如“Rmb$9518”就是一个好口令。
花了些时间,用Replace Pioneer帮你制做了一个加解密工具。详细步骤:
1. 在Replace Pioneer的编辑框里输入数字,如:
1234
5678
9123
2. 点击ctrl-h打开replace窗口
在search for pattern输入"\d+"(不带双引号)
在replace with pattern 输入以下行:
join('', map{ $R=int(rand(1180)).$match if (/^0$/); $A=$R%26; $R=($R-$A)/26; chr(ord(('a','A')[rand(2)])+$A);}(0..4))
3. 点击Replace,得到密码如下:
IzIQC
kqrqT
leoVX
4. 点击ctrl-h打开replace窗口
在search for pattern输入"\w+"(不带双引号)
在replace with pattern 输入以下行:
join('', (undef $N,map {$N=$N*26+ord($_)-ord('A');'';}(reverse(split(//,uc($match))))),$N%10000)
5. 点击Replace,得到原文如下:
1234
5678
9123
注:可以输入任意多行,而且密码每次都不同。
GPG加密和解密
随着网络与计算机技术的发展,数据存储与数据交换的安全性已经变得越来越重要,加密技术已经很早就用于数据存储和数据交换。为了确保网络数据交换时的双方身份的正确性,签证体系也已经成熟。GPG就是用来加密数据与制作证书的一套工具,它是一个完全免费、源代码公开,并且与PGP完全兼容的软件产品。GPG软件作为用于加密和数字签名的开放源码工具,许多Linux发行版本都自带了该软件。
下面,让我们一起来看看,gpg如何加密和解密的吧。
创建密钥
gpg --gen-key
你要求输入一下内容,这些内容,基本英文,还是很好明白
root@g140:~# gpg --gen-key
gpg (GnuPG) 1.4.11; Copyright (C) 2010 Free SoftwareFoundation, Inc.
This is free software: you are free to change andredistribute it.
There is NO WARRANTY, to the extent permitted by law.
gpg: directory `/root/.gnupg' created
gpg: new configuration file `/root/.gnupg/gpg.conf'created
gpg: WARNING: options in `/root/.gnupg/gpg.conf' are notyet active during this run
gpg: keyring `/root/.gnupg/secring.gpg' created
gpg: keyring `/root/.gnupg/pubring.gpg' created
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection?
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
= key expires in n days
w = key expires in n weeks
m = key expires in n months
y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y
You need a user ID to identify your key; the softwareconstructs the user ID
from the Real Name, Comment and Email Address in thisform:
"Heinrich Heine (Der Dichter) "
Real name: chenshake
Email address: shake.chen@gmail.com
Comment:
You selectedthis USER-ID:
"chenshake "
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a Passphrase to protect your secret key.
We need to generate a lot of random bytes. It is a goodidea to perform
some other action (type on the keyboard, move the mouse,utilize the
disks) during the prime generation; this gives the randomnumber
generator a better chance to gain enough entropy.
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key AEAA16F3 marked as ultimately trusted
public and secret key created and signed.
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGPtrust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m,0f, 1u
pub 2048R/AEAA16F3 2013-10-21
Key fingerprint = B93B 05F8 9D63 5464 6DEE 6A08 EB9E D2BBAEAA 16F3
uid chenshake
sub 2048R/02B4038D 2013-10-21
就是上面这个过程
在这个生成密钥的过程中,有个步骤很重要,就是生成内存随机数,命令如下:
ddif=/dev/zero of=test.dbf bs=9000 count=1000k .直到生成key为止。
查看私钥
# gpg -k
/root/.gnupg/pubring.gpg
------------------------
pub 2048R/AEAA16F3 2013-10-21
uid chenshake
sub 2048R/02B4038D 2013-10-21
查看公钥
# gpg --list-keys
/root/.gnupg/pubring.gpg
------------------------
pub 2048R/AEAA16F3 2013-10-21
uid chenshake
sub 2048R/02B4038D 2013-10-21
导出公钥
gpg -o chenshake.gpg -a --export chenshake
其中chenshake为用户ID
chenshake.gpg为导出的公钥文件
导出私钥
gpg -o chenshake-private.gpg --export-secret-keyschenshake
导入秘钥
公钥和私钥的导入,都是一样。
gpg --import filename
公钥
(另外一台机器)
当然你需要通过scp把公钥复制到远程的机器
# gpg --import chenshake.gpg
gpg: directory `/root/.gnupg' created
gpg: new configuration file `/root/.gnupg/gpg.conf'created
gpg: WARNING: options in `/root/.gnupg/gpg.conf' are notyet active during this run
gpg: keyring `/root/.gnupg/secring.gpg' created
gpg: keyring `/root/.gnupg/pubring.gpg' created
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key AEAA16F3: public key "chenshake "imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
你也可以查看到导入的公钥
# gpg --list-keys
/root/.gnupg/pubring.gpg
------------------------
pub 2048R/AEAA16F3 2013-10-21
uid chenshake
sub 2048R/02B4038D 2013-10-21
公钥加密
一个文件,我这里是加密cobbler.ks 这个文件,加密后是 cobbler.ks.gpg文件,需要私钥才能查看。
# gpg -o cobbler.ks.gpg -er chenshake cobbler.ks
gpg: 02B4038D: There is no assurance this key belongs tothe named user
pub 2048R/02B4038D 2013-10-21 chenshake
Primary key fingerprint: B93B 05F8 9D63 5464 6DEE 6A08EB9E D2BB AEAA 16F3
Subkey fingerprint: FCCA 50DD C98D 644E 00FB 804C 4CD29544 02B4 038D
It is NOT certain that the key belongs to the personnamed
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.
Use this key anyway? (y/N) y
私钥解密
私钥查看 cobbler.ks.gpg
# gpg -o cobbler.ks -d cobbler.ks.gpg
You need a passphrase to unlock the secret key for
user: "chenshake "
2048-bit RSA key, ID 02B4038D, created 2013-10-21 (mainkey ID AEAA16F3)
gpg: gpg-agent is not available in this session
gpg: encrypted with 2048-bit RSA key, ID 02B4038D,created 2013-10-21
"chenshake "
需要你输入你当初创建秘钥的时候设置的那个密码。这个时候,你就可以查看到加密的文件。
【编辑推荐】
如何对LUKS加密的磁盘/分区执行远程增量备份?
找回MD5加密的密码及MD5加密数据库中数据
对称加密之AES及压缩加密解密解压综合实战
加密 5 位数字(如 12345)的一种方法是对数字中的每个数字应用数学运算以创建一个新的加密数字。例如,您可以为每个数字加 3 以获得 34578。要解密数字,您只需对每个数字应用反向运算(在本例中为减去 3)即可返回原始数字。
加密数字的另一种方法是使用替换密码,其中每个数字都替换为不同的字母或符号。例如,您可以将每个数字替换为字母表中后面一定位置的字母(例如,1 替换为 D,2 替换为 E,依此类推)。要解密数字,您只需应用反向替换(在这种情况下,将每个字母替换为相应的数字)。
这些只是加密和解密 5 位数字的许多不同方法的两个示例。您选择的具体方法将取决于您所需的安全级别和可用的资源(例如时间、计算能力)。
回答不易望请采纳