Kryptografia/miniprojekt2/punkt.py

18 lines
383 B
Python

import sys, random, math
sys.path.append("../")
sys.path.append("./")
import functions.functions as fn
def genPunkt(krzywa):
p = krzywa[2]
a = krzywa[0]
b = krzywa[1]
while True:
x = random.randint(0, p-1)
f = (fn.potegowanieimod(x, 3, p) + a * x + b) % p
if f / p != -1:
y = fn.resztaKwadratowa(f, p)
return (x, y)