]> gitweb @ CieloNegro.org - youtube-dl.git/commitdiff
[test/aes] Test aes_decrypt_text with 256 bit
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Sun, 22 Mar 2015 11:09:58 +0000 (12:09 +0100)
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Sun, 22 Mar 2015 11:09:58 +0000 (12:09 +0100)
devscripts/generate_aes_testdata.py
test/test_aes.py

index ff66449ebb9dbbec619596b74524069fe187538b..2e389fc8e742e26b0985f3492835ccb6790cef3e 100644 (file)
@@ -32,5 +32,11 @@ print(repr(r))
 password = key
 new_key = aes_encrypt(password, key_expansion(password))
 r = openssl_encode('aes-128-ctr', new_key, iv)
-print('aes_decrypt_text')
+print('aes_decrypt_text 16')
+print(repr(r))
+
+password = key + 16 * [0]
+new_key = aes_encrypt(password, key_expansion(password)) * (32 // 16)
+r = openssl_encode('aes-256-ctr', new_key, iv)
+print('aes_decrypt_text 32')
 print(repr(r))
index 111b902e1a4386178fc054666a045fd986594cab..4dc7de7b5b8d55fc1d95296b58e076aba664e1cc 100644 (file)
@@ -43,5 +43,13 @@ class TestAES(unittest.TestCase):
         decrypted = (aes_decrypt_text(encrypted, password, 16))
         self.assertEqual(decrypted, self.secret_msg)
 
+        password = intlist_to_bytes(self.key).decode('utf-8')
+        encrypted = base64.b64encode(
+            intlist_to_bytes(self.iv[:8]) +
+            b'\x0b\xe6\xa4\xd9z\x0e\xb8\xb9\xd0\xd4i_\x85\x1d\x99\x98_\xe5\x80\xe7.\xbf\xa5\x83'
+        )
+        decrypted = (aes_decrypt_text(encrypted, password, 32))
+        self.assertEqual(decrypted, self.secret_msg)
+
 if __name__ == '__main__':
     unittest.main()