【问题标题】:How can I specify an AES key in Python?如何在 Python 中指定 AES 密钥?
【发布时间】:2011-09-13 01:33:44
【问题描述】:

我正致力于将 Java 程序转换为 Python,其核心网络的一部分使用 AES 加密来处理上下线的数据包。 Java 的 AES 是这样初始化的:

byte[] key = { 0x13, 0x00, 0x00, 0x00 };
sKeySpec = new SecretKeySpec(key, "AES");

我想在 Python 中做同样的事情,并将使用 PyCrypto,但我不确定如何在其中初始化上述内容,因为它只允许基于字符串的“密钥”。

【问题讨论】:

  • 请注意:AES-128 密钥的长度为 128 位,即 16 个字节。与此相比,您的密钥有点短。我不知道如果你在这里传递一个太短的键(可能是零填充)会发生什么,尽管你通常不应该在你的程序中硬编码一个键。

标签: java python aes pycrypto


【解决方案1】:

然后使用字符串

key = '\x13\x00\x00\x00'

【讨论】:

    【解决方案2】:

    您为什么不尝试使用 Jython ,因为您可以直接导入 .class 文件而无需重新编写它。

    【讨论】:

    • 如果可能的话,我想坚持使用 CPython,因为我确信有办法做到这一点,我只是想念它......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    • 2017-10-28
    • 2018-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    相关资源
    最近更新 更多