def calc_keys(self): """Calculate sessions keys for encryption and hmac. Is based on pprime, b1b2, b3b4""" tw = MCRYPT('twofish', 'ecb') tw.init(self.pprime) self.enckey = tw.decrypt(self.b1b2) # its ok to reuse; ecb doesn't keep state info self.hshkey = tw.decrypt(self.b3b4) log.debug("Encryption key K: %s " % repr(self.enckey)) log.debug("HMAC Key L: %s " % repr(self.hshkey))
def calc_keys(self): """Calculate sessions keys for encryption and hmac. Is based on pprime, b1b2, b3b4""" tw = MCRYPT('twofish', 'ecb') tw.init(self.pprime) self.enckey = tw.decrypt(self.b1b2) # its ok to reuse; ecb doesn't keep state info self.hshkey = tw.decrypt(self.b3b4) log.debug("Encryption key K: %s " % repr(self.enckey)) log.debug("HMAC Key L: %s " % repr(self.hshkey))
def decrypt_data(self): """Decrypt encrypted portion of header and data""" log.debug("Creating mcrypt object") tw = MCRYPT('twofish', 'cbc') log.debug("Adding key & iv") tw.init(self.enckey, self.iv) log.debug("Decrypting data") self.fulldata = tw.decrypt(self.cryptdata)
def decrypt_data(self): """Decrypt encrypted portion of header and data""" log.debug("Creating mcrypt object") tw = MCRYPT('twofish', 'cbc') log.debug("Adding key & iv") tw.init(self.enckey, self.iv) log.debug("Decrypting data") self.fulldata = tw.decrypt(self.cryptdata)
def decryptXtea(key, iv, str): m = MCRYPT('xtea', 'ecb') key = key.ljust(m.get_key_size(), "\0") iv = iv.ljust(m.get_iv_size(), "\0") m.init(key, iv) return m.decrypt(str)
def decrypt_data(self): """Decrypt encrypted portion of header and data""" tw = MCRYPT('twofish', 'cbc') tw.init(self.enckey, self.iv) self.fulldata = tw.decrypt(self.cryptdata)
def decrypt_data(self): """Decrypt encrypted portion of header and data""" tw = MCRYPT('twofish', 'cbc') tw.init(self.enckey, self.iv) self.fulldata = tw.decrypt(self.cryptdata)