Задание
Написать библиотеку, реализующую основные алгоритмы электронной подписи файлов.
Функционал программы
- Эль-Гамаля
- RSA
- ГОСТ
Фрагмент программного кода
while lab1.my_fast_pow(g, q, p) != 1: g = random.randint(1, p - 1) x = random.randint(1, p) y = lab1.my_fast_pow(g, x, p) h = hashlib.md5(file).hexdigest() k = random.randint(1, p - 1) while lab1.my_gcd(p - 1, k)[0] != 1: k = random.randint(1, p) r = lab1.my_fast_pow(g, k, p) u = [(int(i, 16) - x * r) % (p - 1) for i in h] s = [(lab1.my_gcd(k, p - 1)[1] * i) % (p - 1) for i in u]
Пояснения по запуску программы
Открыть и запустить файл lab3.py
Mihail