def get_RSAKey(): RSAKey = {} start = time.perf_counter() prime_arr = Prime.get_rand_prime_arr(2) p = prime_arr[0] q = prime_arr[1] while p == q: q = random.choice(prime_arr) end = time.perf_counter() n = p * q s = (p - 1) * (q - 1) a = 65537 b = Prime.mod_inverse(a, s) print("随机生成的素数p =", p) print("随机生成的素数q =", q) print('素数生成的时间为:', end - start, 's') print("n = pq =", n) print("利用Euclidean算法生成的私钥a =", a) print("利用扩展Euclidean算法生成的公钥b =", b) puk = [n, a] prk = [n, b] RSAKey['puk'] = puk RSAKey['prk'] = prk return RSAKey
def get_RSAKey(): RSAKey = {} prime_arr = Prime.get_rand_prime_arr(2) p = prime_arr[0] q = prime_arr[1] while p == q: q = random.choice(prime_arr) n = p * q s = (p - 1) * (q - 1) e = 65537 d = Prime.mod_inverse(e, s) print "p = ", p, ",q = ", q print "n = ", n print "e = ", e, ",d = ", d puk = [n, e] prk = [n, d] RSAKey['puk'] = puk RSAKey['prk'] = prk return RSAKey