start_time = datetime.now() bob_key, bob_index = b.solve_random_puzzle_v2(alice_pre_puzzle_keys, alice_enc_secret_keys) bob_time = datetime.now() - start_time start_time = datetime.now() # Eve pre compute all puzzle keys puzzle_keys = [] for ppk in alice_pre_puzzle_keys: p = Puzzle(None, ppk, None, None) puzzle_keys.append(p.pk) # Eve try to break each encrypted key she captured for key in alice_enc_secret_keys: e = UserPuzzle(puzzle_size) eve_key, eve_index = e.break_random_puzzle_v2(puzzle_keys, key) # Eve stop when a key matching bob's one is found if eve_key == bob_key: print "Key :\t\t%s" % hexlify(eve_key) print "Index :\t\t%d" % eve_index eve_time = datetime.now() - start_time times[puzzle_size] += eve_time print "\nAlice time :\t%s" % alice_time print "Bob time :\t%s" % bob_time print "Eve time :\t%s" % eve_time print "----" * 20 break # combined total times (used to calculate average time)