如何为aes加密生成随机密钥

时间:2015-03-29 10:31:55

标签: python encryption

我是python的新手。我正在使用AES

编写关于文件加密的代码

https://stackoverflow.com/a/20868265/2955896

它使用此密钥进行加密

key = b'\xbf\xc0\x85)\x10nc\x94\x02)j\xdf\xcb\xc4\x94\x9d(\x9e[EX\xc8\xd5\xbfI{\xa2$\x05(\xd5\x18'

如何随机生成密钥以便无法进行解密?

1 个答案:

答案 0 :(得分:0)

最实用的方法是从操作系统提供的随机设备中读取随机数据。 使用os.random();

可以方便地访问它
In [1]: import os

In [2]: os.urandom(128)[:10]
Out[2]: b'\xee&\x06s?\x8d\xfcI=\x07'

(为方便起见,仅显示前10个字节。)

每次调用时都会返回不同的数据;

In [3]: os.urandom(128)[:10]
Out[3]: b')\x12TQ\xf5\xa3G\xe2\xb00'

In [4]: os.urandom(128)[:10]
Out[4]: b'\xce\xba\xd2Gr\x8c6\xba\xb7\x91'

In [5]: os.urandom(128)[:10]
Out[5]: b'~\x00\xca\x0c=\xd3\xff\xef\xc8\x14'

In [6]: os.urandom(128)[:10]
Out[6]: b'\xb0~vb"\xd6(F\xb7v'