ASISCTF2017-Simple Crypto-writeup
简单异或加密
Task
|
|
Solution
下载下来后解压得到两个文件flag.enc和simple.py。flag.enc是加密后的文件,simple.py是加密算法的实现,其代码如下:
流程如下;
- 将FLAG,KEY进行hex编码得到flag,key
- 经过xor_str()处理,将flag,key的每一位对应进行异或操作,返回最后的结果后进行一次hex编码,得到enc
- 将enc进行hex解码后写入到文件flag.enc中
由于只是进行简单的异或操作,所以解密系统可以归纳如下:
- 从flag.enc中读取,并进行hex编码,得到enc
- 把KEY进行hex编码,得到key
- 将key和enc进行xor_str()处理,并进行一次hex编码,得到flag
- 将flag进行hex解码,得到FLAG
据此写出解密脚本:
得到的decflag里的一长串字符用hex编辑器处理一下
得到flag: