def test_decrypt_invalidKey(self): key = keygenerator.generate() cyphertext = aescypher.encrypt(self.plaintext, key) invalid_key = keygenerator.generate() while (invalid_key == key): invalid_key = keygenerator.generate() res = aescypher.decrypt(cyphertext, invalid_key) self.assertNotEqual(self.plaintext, res)
def test_decrypt_key192(self): key = keygenerator.generate(192) cyphertext = aescypher.encrypt(self.plaintext, key) res = aescypher.decrypt(cyphertext, key) self.assertEqual(self.plaintext, res)
def test_decrypt_invalidMode(self): key = keygenerator.generate() cyphertext = aescypher.encrypt(self.plaintext, key) with self.assertRaises(Exception): aescypher.decrypt(cyphertext, key, "TST")
def test_decrypt_modeMismatch(self): key = keygenerator.generate() iv = keygenerator.generate(128) cyphertext = aescypher.encrypt(self.plaintext, key, "CBC", iv) res = aescypher.decrypt(cyphertext, key, "ECB") self.assertNotEqual(self.plaintext, res)
def test_decrypt_CBC(self): key = keygenerator.generate() iv = keygenerator.generate(128) cyphertext = aescypher.encrypt(self.plaintext, key, "CBC", iv) res = aescypher.decrypt(cyphertext, key, "CBC", iv) self.assertEqual(self.plaintext, res)
def test_decrypt_char(self): key = keygenerator.generate() plaintext = "a".encode() cyphertext = aescypher.encrypt(plaintext, key) res = aescypher.decrypt(cyphertext, key) self.assertEqual(plaintext, res)
def test_decrypt_emptyPlaintext(self): key = keygen.generate() plaintext = "".encode() cyphertext, iv = aescypher.encrypt(plaintext, key) res = aescypher.decrypt(cyphertext, key, iv) self.assertEqual(plaintext, res)
def test_decrypt_key128(self): key = keygen.generate(128) cyphertext, iv = aescypher.encrypt(self.plaintext, key) res = aescypher.decrypt(cyphertext, key, iv) self.assertEqual(self.plaintext, res)
def test_decrypt_givenIV(self): key = keygen.generate() iv = keygen.generate(128) cyphertext = aescypher.encrypt(self.plaintext, key, iv)[0] res = aescypher.decrypt(cyphertext, key, iv) self.assertEqual(self.plaintext, res)