如何在python中为AES生成强大的一次会话密钥

6 python m2crypto

我正在使用M2Crypto的AES加密消息,但对如何生成强随机会话密钥以及长度感到困惑.M2Crypto是否为生成随机密钥提供任何功能.

小智 12

AES- 128具有128位密钥= 16字节.

random_key = os.urandom(16)
Run Code Online (Sandbox Code Playgroud)

应该足以满足大多数用途.当您将此随机值提供给M2(或任何加密库)时,它会在内部转换为实际用于加密的"密钥计划".