Взлом алгоритма Эль-Гамаль( с помощью алгоритма Шенкса)
Данное задание мне выдавали по предмету криптология. Наверно один из немногих предметов, который мне кажется реально полезным и интересным. Реализовывал на Java т.к боялся что числа выйдут за пределы стандартных типов данных, а в Java для этого есть удобный тип данных BigInteger. Такто. Итак условие: В следующих задачах зашифрован алгоритмом ЭльГамала текст, написанный на английском языке. Использован следующий алфавит: "A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z| |,|.|". Блок "подсказки" расположен в начале криптотекста и является общим для всех его блоков. Его длина считается неизвестной. Найти секретный ключ и расшифровать текст. "5148154611033774886049492438294008383372872853501067660147906401592062201450665781876473" Открытый ключ: p=89981741 g=2 h=76976449 Часть первая - решение задачи целочисленного логарифмирования ( поиск секретного ключа a) На вход подаётся p,g,h package Shenks; import java.math.BigInteger; im...