xor加密法(什么是异或加密)
本文目录
- 什么是异或加密
- 如何破解office excel加密
- XOR算法加密的文件可以破解吗
- 如何利用异或运算进行简单加密解密
- 异或加密与解密(C语言)注释
- 关于VB的XOR加密
- excel中的XOR加密和标准加密有什么不一样
- xor加密和标准加密的区别
- 使用“异或”设计一个简单的“分配-还原”算法,对一个“01”字符串加密
什么是异或加密
异或的特点是原始值经过两次异或某一个数后会变成原来的值,所以有时利用这个特性来进行加密,加密端把数据与一个密钥进行异或操作,生成密文。接收方收到密文后利用加密方提供的密钥进行再次异或操作就能得到明文。loop是汇编语言中的循环指令。它对cx进行减1,如果不为0则跳到循环首部继续执行循环体。如果为0,执行loop的下一条指令。
如何破解office excel加密
方法/步骤
大家是不是还以为Excel密码破解是几乎做不到的事情?但事实刚好相反,借助Excel密码破解工具,Excel密码破解只需几秒钟的事情,“excel密码忘记了怎么办”这样的问题根本就不算问题!你还相信Excel密码破解是不可能完成的任务吗?
本文只为告诉大家一个简单的事实,Excel密码破解真的很简单。本文所提到的Excel破解工具并不提供下载,仅供笔者测试使用。请大家不要拿着这些破解工具做什么坏事,如果出问题了笔者可不负责。至于如何使用Office软件(WPS Office 2012等)创建一个下一次宇宙大爆发也破解不了的密码(夸张了点),请详细阅读本文。
Excel密码破解工具之4大金刚
与其说是Excel密码破解工具,不如说是Office文档密码破解工具更适合,因为这些Office密码破解工具都无一例外支持Word、Excel、PPT文档破解。我们先来看看有哪四大Excel密码破解工具吧。
Excel密码破解工具之四大金刚
1、Accent OFFICE Password Recovery
特点:成功破解过的密码都会被记录下来用作下一次破解,破解已经破解过文档不费吹灰之力。
2、Office Password Remover
特点:在线秒杀所有采用普通加密方式的“.doc”、“.xls”、“.ppt”文档。
缺点:付款才能看到完整的被破解的文档,必须上网才能用。
3、Advanced Office Password Recovery
特点:功能无比强大,如果上面两款都破解不了,这款是最终武器。
4、Office Password Unlocker
特点:由于前三款Excel密码破解工具已经够用,这款功能其实也不差,但对笔者而言是凑数用。
Excel密码破解究竟有多简单?
笔者先用Microsoft Office Excel 2003(可用金山WPS Office 2012 表格代替)创建一个“*****”的普通方式加密Excel文档,然后用Office Password Remover这个在线破解工具来破解,1,2,3,3秒之后,就生产一个已经被成功破解的新Excel文档——2003(DEMO).xls 。破解一个普通加密方式的Excel文档,只需3秒钟!如果你真的不信,可以自己测试一下!
不管你信不信,Excel密码破解只需3秒
当然,这个3秒破解Excel文档密码是有条件的。第一个条件:Excel文档保存格式必须为古老的“.XLS ”格式(同理,Word文档保存为“.DOC”格式,PPT文档为“.PPT格式”),第二个条件为加密方式必须为Office 2003或2007(WPS Office 2012)的默认加密方式。
注:要想得到完全的破解文件,需要付费,免费破解的Excel文档只能看到前几行。
Excel密码破解工具一秒能测试多少个密码?
如果不付费就破解不了,那就大错特错。要知道,在一台普通配置的电脑上,Excel密码破解工具一秒能测试约88万个密码(需符合以上两个条件)。假设一个6位数的全数字密码,你猜要多长时间来破解?答案是2秒不到(破解时间因测试环境不同而不同)。
Excel密码破解工具一秒能测试约88万个密码
WPS表格(用途相当于Excel)虽然提供多种加密方式,但其中的XOR加密方式在Advanced Office Password Recovery里就形成虚设。可能是Advanced Office Password Recovery已经掌握了怎么完美破解XOR加密方式的方法,否则不可能做到无论你设置什么密码,都会被瞬间打开!
笔者在此强调一下,这不代表WPS Office 2012 的加密方式不行,只是想说明,Excel加密要选对加密方式才靠谱,后面就是详细讲解这个。
从另一个角度探讨看XOR加密方式,XOR加密方式虽然可以被 Advanced Office Password Recovery 瞬间破解,但却完全不怕Office Password Remover的在线破解。因为Office Password Remover对XOR加密方式的Office 文档无可奈何。如果有人想找随时找回密码的加密方式,那WPS内置的XOR加密毫无疑问是最适合的方式。
XOR算法加密的文件可以破解吗
面来试一下使用穷举法破解以这种方式加密的文件,假设现在有一个怀疑加密了的文件*****,使用Winhex打开这个文件,如图6-1所示。 (点击查看大图)图6-1 用Winhex打开怀疑加密了的文件*****观察图6-1中的十六进制数据,以及十六进制数据右边显示的ASCII值,初步推断这个文件存放了UNICODE编码的中国汉字,因为第一行的16个十六进制数据按照UNICODE编码,两个字节解析一个汉字得出"行邽憱挒嫋悜邷悜",但根据文件名"*****"猜测这是一个动画配置文件,因为"animation"可以翻译为动画,"cfg"多数是"config"的缩写,翻译为配置。那么动画配置文件里面应该存放和动画数据相关的数据才对,怎么会存放中国汉字呢?难道加密了?如果是加密了那么使用了哪种加密方式呢?从最简单的XOR加密入手吧,编写一个程序,这个程序的功能是这样的,读取*****文件中前16字节的内容,然后使用0~255之间任一个数值和从*****文件中提取出来的这16个字节(实际可以提取更多字节作比较,这里只提取文件前16字节)作XOR运算,最后将这256组经过XOR运算的数据放在一起作比较,看哪组数据XOR运算后看上去比较有意义而不是垃圾数据。按照上面的思路编写出如下C语言代码:#include《*****》
#include《*****》
main()
{
FILE *fp,*fp2;
int i,j; //i用作记录0到255之间任一个数,j用作记录当前XOR的字节位置
byte *buffer,*buffer1,*buffer2,*buffer3;//指针buffer和buffer1一组,制作buffer2
//和buffer3
//一组,buffer指针会变动,buffer制作永远指向
//buffer的第一个字节位置,buffer2和buffer3同样道
//理
buffer =(byte*)malloc(16); //分配16个字节给buffer指向的位置
buffer2 =(byte*)malloc(16*256); //分配16*256个字节给buffer2指向的位置
fp = fopen("*****", "rb");//打开怀疑加密了的文件
buffer3=buffer2; //buffer3保存buffer2初始时的地址
for (i=0;i《=255;i++)
{
buffer1=buffer; //buffer1保存buffer初始时的地址
fseek(fp, 0, 0); //重定位到*****文件的开头
fread(buffer1, 16, 1, fp); //读取*****文件的开头16字节数据到buffer
for(j=0;j《16;j++)
{
*buffer1=*buffer1^i; //*****文件的开头第一个字节和0~255之间
//任一个数值异或,结果保存在buffer1所指的位置上
*buffer2=*buffer1; //将buffer1所指向的数据复制到buffer2所指的位置
buffer1=buffer1+1; //buffer1指针加1,准备读取下一个数据
buffer2=buffer2+1; //buffer2指针加1,准备存储下一个数据
}
}
fp2 = fopen("test", "wb+"); //打开一个二进制文件,准备将数据写入
fwrite(buffer3, 16*256, 1, fp2);//buffer3保存buffer2初始时的地址,这个语句将
//buffer2初始时的地址所指的数据,用二进制方式写入
//16×256字节
fclose(fp2); //关闭文件句柄
fclose(fp);
}
如何利用异或运算进行简单加密解密
利用“^”异或运算对字符串进行加密
思路:1.先创建字符串输入的Scanner;
2.通过char array = *****();// 获取字符数组;
3.遍历字符数组,按目前理解要用到遍历:数组所有元素进行访问,比如你要输出数组里所有的信息时,就要用到
4.进行异或运算
按位做“异或”运算是:位值相同得1,不同得0
例如:
《 加密过程:》
原解释的二进制为 1 1 0 0 ----原文
设定的key的二进制为 0 1 1 0 ----密匙
两者做“异或”结果为 0 1 0 1 ----密文
《 解密过程:》
0 1 0 1----密文
0 1 1 0----密匙
两者“异或”就得到了原文 1 1 0 0 ----原文
详细代码:
package *****;
import *****;
public class Example {
public static void main(String args){
Scanner sca=new Scanner(*****);
*****("请输入一个英文字符串或解密字符串");
String line=*****();//获取用户输入信息
char array=*****();//获取字符数组
for (int i=0;i《*****;i++){//历遍字符数组
array^20000);//对数组每个元素进行异或运算
}
*****("加密解密结果如下:");
*****(new String(array));//输出密钥
}
}
异或运算:
1 ^ 1 = 0
1 ^ 0 = 1
0 ^ 1 = 1
0 ^ 0 = 0
字符’A’ 的ASCII编码为65 : 00000000 01000001
取整数7 : 00000000 00000000 00000000 00000111
XOR运算后 : 00000000 00000000 00000000 01000110
简单加密算法代码如下 :
public class Test {
public static final int KEY = 7;
public static void main(String args) {
String str = "Hello World!";
StringBuffer str2 = new StringBuffer(); //存储加密后的字符串
StringBuffer str3 = new StringBuffer(); //存储解密后的字符串
//加密过程
for(int i=0;i《*****();i++)
{
char c = (char)(*****(i) ^ KEY);
*****(c);
}
//解密过程
for(int i=0;i《*****();i++)
{
char c = (char)(*****(i) ^ KEY);
*****(c);
}
*****("原始 的字符串为:" + str);
*****("加密后 的字符串为:" + str2);
*****("解密后 的字符串为:" + str3);
}
}
输出:
原始 的字符串为:Hello World!
加密后 的字符串为:Obkkh’Phukc&
解密后 的字符串为:Hello World!
异或加密与解密(C语言)注释
异或运算有一个特性
若
c = a xor b
那么
a = c xor b
根据这样的特性,你有一个信息a,然后你产生一个密码b,把它和a异或运算之后就变成了c。这就是一种加密,解密的时候,把c重新和b异或运算,就变回了a。
顺带说一下,异或是很弱的加密方法,很容易被破解的。
关于VB的XOR加密
读取文件进一缓冲区,然后与一自己设置的密码进行xor运算,得到加密文件.解密时再与自己设置的密码进行xor运算即可.
excel中的XOR加密和标准加密有什么不一样
1、先将整个工作表选定(Ctrl+a)或用鼠标点击工作表左上角。2、按鼠标右键,选中“设置单元格格式”,寻保护”,去掉“锁定”选项。3、再选中要保护的单元格,按鼠标右键,选中“设置单元格格式”,寻保护”,选中“锁定”选项。4、再选定整个工作表,在...
xor加密和标准加密的区别
没区别。xor加密和标准加密都是经过加密处理过的,因此没有区别,加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息。
使用“异或”设计一个简单的“分配-还原”算法,对一个“01”字符串加密
问题是,你如何定义“无法推测出X”。一般来说,没有任何算法是绝对安全的。最不济,都可以用穷极的方法。所以是没有理论上“无法推测出X”的可能性。
这里举一个简单的算法。表面上是满足条件的。
1)先将x按照需要的n个部分,命名为m1, m2, m3, m4, m5....
2) 让 s1 = m1;
s2 = s1 XOR m2;
s3 = s2 XOR m3;
s4 = s3 XOR m4;
....
还原的算法很简单。
更多文章:
专题页是什么(什么是专题页 什么关键词适合做专题页 专题页有什么优势 特点 什么情况下使用专题页)
2026年5月4日 17:20
绝对值函数excel公式怎么打(EXCEL中绝对值符号怎么打)
2026年5月4日 17:00
strcpy a b 什么意思(c语言中的char *a,*b; strcpy(a,b);与a=b;有什么区别)
2026年5月4日 16:20
thinkphp50在线手册(ThinkPHP怎么导入自定义类库)
2026年5月4日 15:40





