MCPcopy Create free account
hub / github.com/subbarayudu-j/TheAlgorithms-Python / generateKey

Function generateKey

ciphers/elgamal_key_generator.py:30–40  ·  view source on GitHub ↗
(keySize)

Source from the content-addressed store, hash-verified

28
29
30def generateKey(keySize):
31 print('Generating prime p...')
32 p = rabinMiller.generateLargePrime(keySize) # select large prime number.
33 e_1 = primitiveRoot(p) # one primitive root on modulo p.
34 d = random.randrange(3, p) # private_key -> have to be greater than 2 for safety.
35 e_2 = cryptoMath.findModInverse(pow(e_1, d, p), p)
36
37 publicKey = (keySize, e_1, e_2, p)
38 privateKey = (keySize, d)
39
40 return publicKey, privateKey
41
42
43def makeKeyFiles(name, keySize):

Callers 1

makeKeyFilesFunction · 0.70

Calls 1

primitiveRootFunction · 0.85

Tested by

no test coverage detected