(keySize)
| 28 | |
| 29 | |
| 30 | def 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 | |
| 43 | def makeKeyFiles(name, keySize): |
no test coverage detected