德军的密码
已知将一个flag以一种加密形式为使用密钥进行加密,使用密钥WELCOMETOCFF加密后密文为 000000000000000000000000000000000000000000000000000101110000110001000000101000000001 请分析出flag。Flag为12位大写字母
key="WELCOMETOCFF" #密钥
miwen="000000000000000000000000000000000000000000000000000101110000110001000000101000000001" #密文
bin_key="" #定义变量二进制的密钥
for letter in key:
bin_key+=bin(ord(letter))[2:].zfill(7) #把密钥转成对应的ASCII码,再转成二进制数字组成的字符串
int_miwen=int(miwen,2) #2进制转10进制
int_key=int(bin_key,2)
int_mi=int_miwen^int_key #密文和密钥异或 整形
bin_mi=bin(int_mi)[2:].zfill(84) #10进制转换为二进制数组组成的字符串“”
jie=""
for i in range(0,12):
jie+=chr(int(bin_mi[i*7:(i+1)*7],2)) #用chr()函数将ASCII码转为字符串
print (jie)
flag:WELCOMECISRG