像这样将字节转换为(b'\ xe4 \ x06- \ x95 \ xf5!P4')为python中的零和一的二进制字符串

时间:2019-04-26 17:08:05

标签: python unicode undefined des python-cryptography

好吧,我有一个任务来实现DES算法的操作模式 在CBC模式下:我被卡在加密函数的输出给出这样的字节的位置:b'\ xe4 \ x06- \ x95 \ xf5!P4' (我正在使用Crypto.Cipher的DES库)

我不知道该表示形式是什么,也不知道如何将其转换为零和一的二进制字符串,以将其与第二纯文本进行异或。

任何帮助将不胜感激

*.*

2 个答案:

答案 0 :(得分:1)

您已经接受了答案,但是也许您没有意识到字节串可以按原样进行XOR?无需转换为二进制。示例:

>>> msg = b'Mark'
>>> key = b'\x01\x02\x03\x04'
>>> enc = bytes([a^b for a,b in zip(msg,key)]) # xor each byte with key byte
>>> enc
b'Lcqo'
>>> dec = bytes([a^b for a,b in zip(enc,key)]) # xor again to decrypt
>>> dec
b'Mark'

答案 1 :(得分:0)

你好@nehal,您可以通过以下方法将字节转换为二进制

name='description[add]'

或简单

$_POST['description']['add']