2016-09-27 42 views
0

我正在通過PyCrypto AES實現,使用給定的AES密鑰解密python中的多個文件。我目前將其設置爲一個十六進制字節的靜態列表(因爲這是它提供給我的)。但是,當我嘗試解密這些文件時,出現警告,指出密鑰大小必須是16,24或32個字節。我的列表轉換爲字符串代碼如下:在Python中對用於解密的靜態AES密鑰進行格式化

''.join(str(x) for x in key) 

我驗證過以列表的形式主要有16個字節的事,但在轉換時我做的,必須改變大小。什麼操作最適合將密鑰從類似

[0x2a, 0x7e, 0x15, 0x16, 0x28, 0xae, 0xd2, 0xa6, 0xab, 0xf7, 0x15, 0x88, 0x09, 0xcf, 0x4f, 0x3c] 

到可用的字符串解密?

+0

你試過'「」。加入(CHR(X)在關鍵X) '如果你使用Python 2? –

回答

0

你沒有提到你正在使用的AES實現,但正確的答案很可能是看起來像

k = bytes([0x01, 0x23, 0x34, 0x56]) 
+0

哦,好點。我正在使用PyCrypto的實現。它需要一個字節串。我會更新原始問題以包含該問題。 –

+0

我試過這個,它似乎沒有工作。我仍然得到密鑰大小錯誤,並且無法解密文件。 –