def __init__(self, dh_key, dh_p, p1, p2): """ __init__, constructor for StreamCipher class. INPUT: dh_key, 2048bit DH Key from Part A1 p, DH Key Parameter, Prime Modulus OUTPUT: returns an instantiated StreamCipher object """ # ======== IMPLEMENTATION GOES HERE ========= self.dh_key = dh_key # 2048bit DH Key from Part A1 self.p = dh_p # DH Key Parameter, Prime Modulus self.a = auxillary.deriveSupplementaryKey(dh_key, p1)# Supplementary Key A for Stream Cipher self.b = auxillary.deriveSupplementaryKey(dh_key, p2) # Supplementary Key B for Stream Cipher self.r_i = None # Shift Register
def __init__(self, dh_key, dh_p, p1, p2): """ __init__, constructor for StreamCipher class. INPUT: dh_key, 2048bit DH Key from Part A1 p, DH Key Parameter, Prime Modulus OUTPUT: returns an instantiated StreamCipher object """ # ======== IMPLEMENTATION GOES HERE ========= self.dh_key = dh_key # 2048bit DH Key from Part A1 self.p = dh_p # DH Key Parameter, Prime Modulus self.a = auxillary.deriveSupplementaryKey( dh_key, p1) # Supplementary Key A for Stream Cipher self.b = auxillary.deriveSupplementaryKey( dh_key, p2) # Supplementary Key B for Stream Cipher self.r_i = None # Shift Register
def test_deriveSupplementaryKey(self): err = "FAILED: deriveSupplementaryKey. Non matching supplementary key" self.assertEqual(candidate.deriveSupplementaryKey(self.dh_key, 31), reference.deriveSupplementaryKey(self.dh_key, 31), err)