def print_timings(): import timeit kp, pk = rand_pair() kp2, pk2 = rand_pair() print "keypair gen", timeit.timeit(lambda: ec.gen_keypair(ec.CURVES['K-163']), number=1000), "ms" print "ECDH", timeit.timeit(lambda: ec.ecdh(pk, kp2), number=1000), "ms" print "sign", timeit.timeit(lambda: kp.sign('hello'), number=1000), "ms" sig = kp.sign('hello') print "verify", timeit.timeit(lambda: pk.verify('hello', sig), number=1000), "ms"
def print_timings(): import timeit kp, pk = rand_pair() kp2, pk2 = rand_pair() print "keypair gen", timeit.timeit( lambda: ec.gen_keypair(ec.CURVES['K-163']), number=1000), "ms" print "ECDH", timeit.timeit(lambda: ec.ecdh(pk, kp2), number=1000), "ms" print "sign", timeit.timeit(lambda: kp.sign('hello'), number=1000), "ms" sig = kp.sign('hello') print "verify", timeit.timeit(lambda: pk.verify('hello', sig), number=1000), "ms"
def rand_pair(curve=ec.CURVES['K-163']): keypair = ec.gen_keypair(curve) pub_bytes = keypair.encode_pubkey() pub_key = ec.PublicKey(str(pub_bytes), curve) return keypair, pub_key