Advertisement
bmtd

F-4 Phantom

Apr 9th, 2017
449
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.45 KB | None | 0 0
  1. def gen_pubkey(e, p):
  2.     assert gmpy.is_prime(p) != 0
  3.     B = bin(p).strip('0b')
  4.     k = random.randrange(len(B))
  5.     k, l = min(k, len(B) - k), max(k, len(B) - k)
  6.     assert k != l
  7.     BB = B[:k] + str(int(B[k]) ^ 1) + B[k+1:l] + str(int(B[l]) ^ 1) + B[l+1:]
  8.     q = gmpy.next_prime(int(BB, 2))
  9.     assert p != q
  10.     n = p*q
  11.     key = RSA.construct((long(n), long(e)))
  12.     pubkey = key.publickey().exportKey("PEM")
  13.     return n, p, q, pubkey
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement