[南邮OJ](密码学)异性相吸


题目链接:

异性相吸 300
同性真爱,异性相吸都是假的!(题目要求,我是直的)
解密压缩文件里的内容
TIPS:

  1. xor
  2. hex2binary
  3. len(bin(miwen))==len(bin(mingwen))

biubiubiu.zip


分析:
下载题目提供的压缩包 :

[南邮OJ](密码学)异性相吸_第1张图片
Paste_Image.png

打开两个文件 :

[南邮OJ](密码学)异性相吸_第2张图片
Paste_Image.png

根据题目提示 :

  1. xor
  1. hex2binary
  2. len(bin(miwen))==len(bin(mingwen))

说明加密方式为 : 异或(xor)
使用010Editor打开两个文件 , 转换成二进制模式 , 然后进行异或即可得到结果

[南邮OJ](密码学)异性相吸_第3张图片
Paste_Image.png

明文 :

01101100 01101111 01110110 01100101 01101100 01101111 01110110 01100101
01101100 01101111 01110110 01100101 01101100 01101111 01110110 01100101
01101100 01101111 01110110 01100101 01101100 01101111 01110110 01100101
01101100 01101111 01110110 01100101 01101100 01101111 01110110 01100101

密文 :

00001010 00000011 00010111 00000010 01010110 00000001 00010101 00010001
00001010 00010100 00001110 00001010 00011110 00110000 00001110 00001010
00011110 00110000 00001110 00001010 00011110 00110000 00010100 00001100
00011001 00001101 00011111 00010000 00001110 00000110 00000011 00011000

异或Python脚本 : (利用了字符串比对)

a = '0000101000000011000101110000001001010110000000010001010100010001000010100001010000001110000010100001111000110000000011100000101000011110001100000000111000001010000111100011000000010100000011000001100100001101000111110001000000001110000001100000001100011000'
b = '0110110001101111011101100110010101101100011011110111011001100101011011000110111101110110011001010110110001101111011101100110010101101100011011110111011001100101011011000110111101110110011001010110110001101111011101100110010101101100011011110111011001100101'
for i in range(len(a)):
    if(a[i] == b[i]):
        print '0',
    else:
        print '1',

输出结果为 :

01100110 01101100 01100001 01100111 00111010 01101110 01100011 01110100 
01100110 01111011 01111000 01101111 01110010 01011111 01111000 01101111
01110010 01011111 01111000 01101111 01110010 01011111 01100010 01101001 
01110101 01100010 01101001 01110101 01100010 01101001 01110101 01111101

将其复制 , 然后打开010Editor , 创建一个新的Hex文件 , 粘贴为二进制数据 :

[南邮OJ](密码学)异性相吸_第4张图片
Paste_Image.png

答案:
flag:nctf{xor_xor_xor_biubiubiu}


知识点:

  1. 位运算 : 异或

你可能感兴趣的:([南邮OJ](密码学)异性相吸)