首页 > 代码库 > 对文件异或(xor)解密的方法
对文件异或(xor)解密的方法
这里对异或做下简单的解释,异或是一种2进制的运算,这里举个简单的例子
1^1=0
1^0=1
两者相同则为0,不同则为1
a的二进制是01100001
b的二进制是01100010
逐位比较得到00000011,然后转为十进制就是3,则a^b=3
下面以实验吧的一道题目为例
下载压缩包得到两个txt文件,其中一个是密文,另外一个是明文,根据题目提示可以想到是文件异或
密文和明文的内容如下
所以我们对它们进行异或
python代码如下
# -*- coding: cp936 -*-
a=open(‘密文.txt‘,‘r‘).read()
b=open(‘明文.txt‘,‘r‘).read()
xor=‘‘
for i in range(0,len(a)):
aa = ord(list(a)[i])^ord(list(b)[i])
xor += chr(aa)
print xor
我们跑一下得到:flag:nctf{xor_xor_xor_biubiubiu}
对文件异或(xor)解密的方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。