我编写了一个函数来加密给定的文本文件。下面的代码是该函数的一小部分。
#pad it before encrypting it
elif len(chunk) % 16 != 0:
chunk += ' ' * (16 - len(chunk) % 16)
#write encrypted data into output file
out_file.write(encryptor.encrypt(chunk))
每当我尝试使用该函数时,我都会收到一个错误,该错误指向最后一行: “TyprError:无法将 str 连接到字节”。我不确定我需要做什么才能修复此错误。我尝试了一些事情,但它们最终导致我陷入更多类似的错误。任何指导将不胜感激。 加密器如下。
encryptor = PKCS1_OAEP.new(pub_key)
最佳答案
您的加密方法 encryptor.encrypt()
很可能接受 bytes
作为参数,而不是 str
。它也很可能返回字节
。所以我建议您使用如下的encode/decode
方法(utf-8
编码示例):
out_file.write(encryptor.encrypt(chunk.encode('utf-8')).decode('utf-8'))
关于python - 我不知道如何修复 TypeError : can't concat str to bytes mean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49013719/