你好,我开始进入 Python 世界并与加密相关,我正在做一个练习,包括制作一个脚本来处理加密消息和获取纯文本消息的密钥。解密的消息必须以 ASCII 显示。 问题是我到了这部分,找不到显示解密纯文本的方法。
message = '9c8d968f8b90a08f868b979091a0c5bb'
key = 'ffffffffffffffffffffffffffffffff'
m_bytes = message.encode()
k_bytes = key.encode()
length = len(message)
result_xor = []
for i in range(length):
result = m_bytes[i] ^ k_bytes[i]
result_xor.append(result)
result_xor_bytes = bytes(result_xor)
string_ascii = result_xor_bytes.decode('ascii')
print(result_xor_bytes)
print(string_ascii)
我得到的结果如下
b'_\x05^\x02_P^\x00^\x04_V\x07V^\x00^P^\x04_Q_V_W\x07V\x05S\x04\x04'
_^_P^ ^_VV^ ^P^_Q_V_WVS
找了一下午,我决定换个方式。
# Se asigna el mensaje cifrado y la key a sus respectivas variables
message = "9c8d968f8b90a08f868b979091a0c5bb"
key = "ffffffffffffffffffffffffffffffff"
# Convierto el mensaje y la clave de hex a bytes
mensaje_cifrado_bytes = bytes.fromhex(message)
clave_bytes = bytes.fromhex(key)
# Utilizo la operación XOR entre el mensaje cifrado y la clave
mensaje_descifrado_bytes = bytes([a ^ b for (a, b) in zip(mensaje_cifrado_bytes, clave_bytes)])
# Convierto el resultado de la operación XOR a ASCII para obtener el mensaje descifrado
mensaje_descifrado = mensaje_descifrado_bytes.decode('ascii')
# Se imprime mensaje descifrado
print(mensaje_descifrado)
这样它给了我我正在寻找的信息。