Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > [C++] Шифрование методом Эль-Гамаля |
Автор: alver 5.4.2007, 22:05 | ||
Попросили меня зделать такую программку, шифрование методом Эль-Гамаля. Я тока где то два часа врубал этот метод, тока потом начал его описывать как код. Кое что получается, но почему то иногда выдаётся неправильный результат. Я подозреваю дело в типах, просто не хватает знаков, т.к. числа очень большие, помогите кто что знает по этому поводу. Вот то, что я успел написать:
Вот краткое описание метода: Получатель сообщения выбирает два больших числа P и G, причем P > G. Получатель выбирает секретный ключ - случайное целое число X < P. Вычисляется открытый ключ Y= G x mod P. Получатель выбирает целое число K, 1< K< P-1. Шифрование сообщения (M): a= GK mod P, b=Y K M mod P, где пара чисел (a,b) является шифротекстом. Помогите спецы, задача по мне не очень то простая.! |
Автор: permea 6.4.2007, 05:55 |
если числа большие, то почему не 64 битные целые?(непереносимо, но gcc и VC++ поддрживают 64-битные целые, хотя названия, емнип, разные + если целые _очень_ большие, есть спецбиблиотеки для работы с ними. |
Автор: Alexandr87 6.4.2007, 06:55 |
разрядность больших чисел, используемых в криптографии с открытым ключом очень велика, используются числа с разрядность 512-5120 бит. Соответсвенно, использовать встроенные типы здесь не получится. Есть специальные библиотеки, которые реализуют способ представления таких данных и логические операции с ними, есть и OpenSource библиотеки - вы найдете их без труда. |
Автор: korbian 6.4.2007, 07:57 |
Операции над числами такой разрядности "отжирают" много ресурсов, поэтому советую сразу думать над оптимизацией. Потому ищи информацию о математике над длиными (так их называют) числами. Очень советую книгу: А.В.Домашев, М.М. Грунтович, В.О.Попов, Д.И.Правиков,А.Ю.Щербаков "Программирование алгоритмов защиты информации" |
Автор: alver 6.4.2007, 11:34 |
Чего то я не нашёл такие библиотеки, может конечно плохо искал, но никто не направит на нужный сайт?? Так же кинга то может хорошая, но в электронном варианте её нигде нет, а купить это долго, мне до понедельника надо. |
Автор: Alexandr87 6.4.2007, 20:57 |
http://gmplib.org/ Из книг "Прикладная криптография" - но разбираться и реализовывать - дело долгое. |
Автор: volatile 30.11.2011, 00:10 | ||
Наглая реклама. И много вы на продаже Эль-Гамаля (фиг знает как написанного), думаете заработать? ![]() да еще и
![]() http://www.cryptopp.com/docs/ref/elgamal_8h_source.html |