def make_symmetric_key(self, nonce1, nonce2): key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(nonce2, nonce1, key_sizes) self.symmetric_cryptography.Signer = SignerAesCbc(sigkey) self.symmetric_cryptography.Encryptor = EncryptorAesCbc(key, init_vec) (sigkey, key, init_vec) = uacrypto.p_sha1(nonce1, nonce2, key_sizes) self.symmetric_cryptography.Verifier = VerifierAesCbc(sigkey) self.symmetric_cryptography.Decryptor = DecryptorAesCbc(key, init_vec)
def make_remote_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Verifier = VerifierAesCbc(sigkey) self.symmetric_cryptography.Decryptor = DecryptorAesCbc(key, init_vec)
def make_local_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Signer = SignerAesCbc(sigkey) self.symmetric_cryptography.Encryptor = EncryptorAesCbc(key, init_vec)
#nonce1 = binascii.unhexlify("01010101010101010101010101010101") #nonce2 = binascii.unhexlify("02020202020202020202020202020202") # #keySize = (16, 16, 16) # #(sigkey, key, init_vec) = uacrypto.p_sha1(nonce1, nonce2, keySize) # #print(":".join("{:02x}".format(c) for c in nonce1)) #print(":".join("{:02x}".format(c) for c in nonce2)) # # #print(":".join("{:02x}".format(c) for c in sigkey)) #print(":".join("{:02x}".format(c) for c in key)) #print(":".join("{:02x}".format(c) for c in init_vec)) nonce1 = binascii.unhexlify("0101010101010101010101010101010101010101010101010101010101010101") nonce2 = binascii.unhexlify("0202020202020202020202020202020202020202020202020202020202020202") keySize = (24, 32, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(nonce1, nonce2, keySize) #print(":".join("{:02x}".format(c) for c in nonce1)) #print(":".join("{:02x}".format(c) for c in nonce2)) print(":".join("{:02x}".format(c) for c in sigkey)) print(":".join("{:02x}".format(c) for c in key)) print(":".join("{:02x}".format(c) for c in init_vec))