import sympy # prime computing based on the following code # https://trinket.io/python3/2fb69ab246 key_size = 16 prime1 = 0 prime2 = 0 while prime1 == prime2 or (prime1 * prime2) > 2**key_size: prime1 = sympy.randprime(3, 2**key_size/2) prime2 = sympy.randprime(3, 2**key_size/2) print(prime1) print(prime2) p = prime1 q = prime2 # RSA modulus r = p * q # Euler's totient phi = (p-1) * (q-1) print('p :', p) print('q :', q) print('r :', r) print('phi :', phi)