sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: sock.connect((host, port)) util = challenge34_util.Util(sock) print('C: writing p...') util.writenum(p) print('C: writing g...') util.writenum(g) print('C: writing A...') util.writenum(A) print('C: reading B...') B = util.readnum() s = pow(B, a, p) key = util.derivekey(s) iv = util.randbytes(16) encryptedMessage = util.encrypt(key, iv, message) print('C: writing encrypted message...') util.writebytes(encryptedMessage) print('C: writing iv...') util.writebytes(iv) print('C: reading encrypted message...') encryptedMessage2 = util.readbytes()
g = 2 a = random.randint(0, p) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: sock.connect((host, port)) util = challenge34_util.Util(sock) print('C: writing p...') util.writenum(p) print('C: writing g...') util.writenum(g) print('C: reading p...') negotiatedP = util.readnum() print('C: reading g...') negotiatedG = util.readnum() A = pow(negotiatedG, a, negotiatedP) print('C: writing A...') util.writenum(A) print('C: reading B...') B = util.readnum() s = pow(B, a, negotiatedP) key = util.derivekey(s)