Esempio n. 1
0
 def value(self):
     random_generator = RandomByteGenerator()
     key = random_generator.value(self.BLOCK_SIZE)
     iv = random_generator.value(self.BLOCK_SIZE)
     ciphertext = AES(key).encrypt(self.plaintext, mode=CBC(iv))
     oracle = CBCPaddingOracle(key, iv)
     return CBCPaddingOracleAttack(oracle).value(ciphertext, iv)
Esempio n. 2
0
File: toy.py Progetto: lukius/mts
 def _init_cipher_from(self, secret, iv=None):
     secret_bytes = IntToBytes(secret).value()
     key = SHA1().hash(secret_bytes)[:self.BLOCK_SIZE]
     self.iv = RandomByteGenerator().value(self.BLOCK_SIZE) if iv is None\
               else iv
     self.cipher = AES(key)
     self.cipher_mode = CBC(iv=self.iv)
Esempio n. 3
0
 def value(self):
     ciphertext = Base64Decoder().decode_file(self.FILE)
     return AES(self.KEY).decrypt(ciphertext, mode=CBC(self.IV)).bytes()
Esempio n. 4
0
 def __init__(self):
     MatasanoChallenge.__init__(self)
     ciphertext = Base64Decoder().decode_file(self.FILE)
     self.plaintext = AES(self.KEY).decrypt(ciphertext, mode=ECB()).bytes()
Esempio n. 5
0
 def value(self):
     key = 'YELLOW SUBMARINE'
     ciphertext = Base64Decoder().decode_file(self.FILE)
     return AES(key).decrypt(ciphertext, mode=ECB()).bytes()
Esempio n. 6
0
 def encrypt(self, plaintext):
     plaintext = self._prepare_plaintext(plaintext)
     key = self.random_generator.value(self.block_size)
     self.mode = self._get_random_mode()
     return AES(key).encrypt(plaintext, mode=self.mode)
Esempio n. 7
0
 def _encrypt(self, message):
     key = RandomByteGenerator().value(BlockCipherMode.DEFAULT_BLOCK_SIZE)
     cipher = AES(key)
     mode = self._get_encryption_mode()
     return cipher.encrypt(message, mode=mode)
Esempio n. 8
0
 def __init__(self, key, encryption_mode):
     self.cipher = AES(key)
     self.mode = encryption_mode
Esempio n. 9
0
 def __init__(self, key, iv):
     self.cipher = AES(key)
     self.iv = iv
Esempio n. 10
0
 def _encrypt(self, plaintexts):
     key = RandomByteGenerator().value(self.BLOCK_SIZE)
     aes = AES(key)
     return map(lambda text: aes.encrypt(text, mode=CTR(nonce=0)).bytes(),
                plaintexts)
Esempio n. 11
0
 def _process_chunk(self, chunk):
     key = self._build_key_from_register()
     result = AES(key).encrypt(chunk).bytes()
     return [self.endianness().to_int(result[:byte_size]).value()]
Esempio n. 12
0
File: tools.py Progetto: lukius/mts
 def __init__(self):
     key = RandomByteGenerator().value(self.BLOCK_SIZE)
     self.cipher = AES(key)
     self.trailing_string = self._decode_trailing_string()
Esempio n. 13
0
 def __init__(self, key):
     self.cipher = AES(key)
     self.profile_template = 'email=%s&uid=%d&role=user'
Esempio n. 14
0
 def __init__(self, key):
     self.cipher = AES(key)