0
作爲概念驗證的一部分,我從第三方獲得了bas64編碼/三重DES(MODE_ECB)加密字符串。我寫了一個快速測試,知道解密的值應該是「testdata」,但似乎並不奏效。解密通過另一個源加密的3DES數據
我已經用pycrypto和pyDES嘗試過了,結果相同。難道我做錯了什麼。 decode('hex')是密鑰的正確方法嗎?
from Crypto.Cipher import DES3
import base64
class akamaiServicesTest(TestCase):
def test_cipherDecode3DES(self):
key = "D41D8CD98F00B204E9800998ECF8427ECF34260089DE00EF".decode('hex')
encryptedString = base64.b64decode("QnRWdXFPeE8rRmJGOGVSWkhOMzFiN3l2Y01scU1QdXU=")
self.assertEqual(encryptedString, "BtVuqOxO+FbF8eRZHN31b7yvcMlqMPuu")
cipher = DES3.new(key, DES3.MODE_ECB)
decryptedString = cipher.decrypt(encryptedString)
self.assertEqual(decryptedString, "testdata")
太棒了!雙base64編碼是什麼扔我。非常感謝。 –