【发布时间】:2018-03-14 04:27:34
【问题描述】:
我正在尝试加密一个字符串,该字符串稍后将被解密以获得密码功能。
但是,当我尝试对其进行加密时,我收到一条错误消息,提示输入字符串的长度必须是 16 的倍数。
这是我的加密代码,它使用了 Jasypt2Python 库。
def test_basic_encryption(self):
try:
self.ciphertext = "encrypt123"
self.j2p = J2PEngine(self.ciphertext)
given_ciphertext = self.j2p.encrypt('mypw123.')
except Exception:
e_str = traceback.format_exc()
print(e_str)
知道如何解决这个问题或让我的密码长度为 16 的倍数吗?
【问题讨论】:
-
也许它希望您将长度填充为 16 的倍数?
-
这正是我在我的问题中要问的。我不知道如何填充它。但是我尝试手动将我的字符串设置为 16 个字符,但仍然出现相同的错误。
-
你有 J2PEngine 类的文档吗?
-
如果作者评论出来,一定是有充分理由的。为什么你期望代码能够工作?这有点像从垃圾桶里拿出一个灯泡,然后抱怨它不会亮起来。
标签: python encryption base64 valueerror