我正在將Java程序轉換爲Python,並且其核心網絡的一部分使用AES加密來處理上行和下行數據包。 Java的AES被初始化像這樣:如何在Python中指定AES密鑰?
byte[] key = { 0x13, 0x00, 0x00, 0x00 };
sKeySpec = new SecretKeySpec(key, "AES");
我想這樣做在Python相同,將使用PyCrypto,但我不知道如何初始化上面,因爲它僅允許基於字符串的「祕密鍵「。
我正在將Java程序轉換爲Python,並且其核心網絡的一部分使用AES加密來處理上行和下行數據包。 Java的AES被初始化像這樣:如何在Python中指定AES密鑰?
byte[] key = { 0x13, 0x00, 0x00, 0x00 };
sKeySpec = new SecretKeySpec(key, "AES");
我想這樣做在Python相同,將使用PyCrypto,但我不知道如何初始化上面,因爲它僅允許基於字符串的「祕密鍵「。
使用一個字符串然後
key = '\x13\x00\x00\x00'
只是說明:一個AES-128鍵具有128位,即16個字節的長度。與此相比,你的鑰匙有點短。我不知道如果你在這裏傳遞一個太短的密鑰(也許是零填充),會發生什麼情況,儘管你通常不應該在你的程序中硬編碼一個密鑰。 –