python中的Rijndael加密

2024-10-06 13:09:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Rijndael加密密钥和块256bit大小的python和填充应该是PKCS7。要么用utf-8编码。 我搜索了很多,最后写了这段代码,我不知道这是一个好方法,但我只知道这些。运行代码时,我遇到了以下错误:

Traceback (most recent call last):
File "testForRijndael.py", line 1, in <module>
  from rijndael.cipher import crypt
File "/opt/odoo/odoo11-venv/lib/python3.6/site- 
  packages/rijndael/cipher/crypt.py", line 1, in <module>
  from rijndael.cipher.blockcipher import *
File "/opt/odoo/odoo11-venv/lib/python3.6/site- 
  packages/rijndael/cipher/blockcipher.py", line 64
    raise Exception,"the IV length should be %i bytes"%self.blocksize
               ^
SyntaxError: invalid syntax

如果有人能帮我,我会很感激的

这是我的代码:

^{pr2}$

Tags: 代码infrompyodooimportvenvline
1条回答
网友
1楼 · 发布于 2024-10-06 13:09:15

您要从中导入的rijndael库是为python2编写的,但是您使用的是python3。请参见下面的python2语法,而不是python3。在

$ cat raise.py
  raise Exception,"text"
$ python2 raise.py
Traceback (most recent call last):
  File "raise.py", line 1, in <module>
    raise Exception,"text"
Exception: text
$ python3 raise.py
  File "raise.py", line 1
    raise Exception,"text"
                   ^
SyntaxError: invalid syntax

您可以尝试自己迁移它,使用2to3工具,查看是否有人编写了端口,或者使用python2编写并执行您的程序。在

尝试pip2 install rijndael,然后python2 testForRijndael.py。在

要在本地代码上运行2to3(实际上不建议这样做,但它可能有效),请运行2to3 -w /opt/odoo/odoo11-venv/lib/python3.6/site-packages/rijndael/**/*.py

相关问题 更多 >