33656

Метод Эль-Гамаля

Доклад

Информатика, кибернетика и программирование

1 WP1 = 1 mod P Затем генерируется секретный ключ Ха из диапазона 1 X P1. Затем вычисляется открытый ключ Y как степень: Y = WX mod P. Затем выбрав число K мы вычисляем число R по формуле : R = YK mod P. Для ее формирования используется операция побитового сложения по модулю 2: C1 = WK mod P 5.

Русский

2013-09-06

103 KB

22 чел.

21.метод Эль-Гамаля

В настоящий момент наиболее распространенными системами шифрования с открытым ключом являются системы RSA и Эль Гамаль. Их применение требует больших вычислительных мощностей, а практическая реализация требует решения таких проблем, как быстрое выполнение  вычислений с числами, состоящими из сотен десятичных разрядов.

Алгоритм Эль Гамаля был разработан в 1985 году и основывается на возведении в степень по модулю большого  простого числа. Данная система является альтернативой RSA и при равном значении ключа обеспечивает ту же криптостойкость. Это связано с тем что задача разложения на сомножители больших целых чисел и задача вычисления дискретного логарифма сопоставимы между собой по трудоемкости решения.

В отличие от RSA метод Эль-Гамаля основан на проблеме дискретного логарифма, т.е если возводить число в степень в конечном поле достаточно легко, то восстановить аргумент по значению (то есть найти логарифм) довольно трудно.

Основу системы составляют параметры Р и W - числа, первое из которых - очень большое простое целое число (несколько сотен десятичных разрядов), а второе - целое. Т.к. программная реализация алгоритмов, которые позволяли бы работать с большими числами, очень трудна, то в лабораторной работе я использую числа до 1018 чего вполне достаточно для применения ее в учебных целях.

Число W находится из условий:

0 < W < P-1         (5.1)

WP-1 = 1 mod P  

Затем генерируется секретный ключ Ха из диапазона 1 Xa P-1.

Затем вычисляется открытый ключ Ya как степень:

Ya = WXa mod P.        (5.2)

Для того чтобы зашифровать сообщение М выбирается дополнительное число К удовлетворяющее условию 1 K P-1. Сообщение М – это ничто иное, как 1 символ текста, или, точнее говоря, ASCII-код символа (от 0 до 255).

Затем, выбрав число K, мы вычисляем число R по формуле :

R = YaK mod P.        (5.3)

Криптограмма, или закодированное сообщение,  формируется из двух элементов. Для ее формирования используется операция побитового сложения по модулю 2:

C1 = WK mod P,        (5.4)

C2 = M  R.

Для восстановления по криптограмме С исходного сообщения сначала используя С1 находят R, для этого возводят С1 в степень Ха по модулю Р:

R = C1Xa mod P = WKXa mod P = (WXa)K mod P = YaK mod P. (5.5)

Если известно R то дешифрование исходного текста не представляет какой-либо трудности. Дешифрование производится по формуле:

M = C2  R.        (5.6)

Таким образом в лабораторной работе происходит циклическое считывание из исходного файла по 1 символу, который затем интерпретируется как ASCII-код и помещается в переменную М. Затем происходит сохранение результата сложения по M xor R в выходном файле, что и представляет собой криптограмму С2. В начало же выходного файла (самым первым его байтом) записывается полученное значение элемента криптограммы С1, поэтому размер закодированного файла больше исходного на 1 байт. При декодировании из закодированного файла сначала считывается первый байт С1, который будет необходим для вычисления R, а затем также циклически происходит побайтовое считывание закодированного файла.


 

А также другие работы, которые могут Вас заинтересовать

52336. АЛГОРИТМ ФОРМУВАННЯ ВМІНЬ ВИКОРИСТОВУВАТИ ЗНАННЯ ПРИ РОЗВ’ЯЗАННІ ТИПОВИХ ЗАДАЧ З МОЛЕКУЛЯРНОЇ БІОЛОГІЇ 309.5 KB
  ПРИКЛАДИ РОЗВ’ЯЗАННЯ ЗАДАЧ НА МОЛЕКУЛЯРНІ ОСНОВИ СПАДКОВОСТІ Під час розв’язання таких задач необхідно пам’ятати що: довжина одного нуклеотида або відстань між двома сусідніми вздовж осі ДНК становить 034 нм; середня молекулярна маса одного нуклеотида 345 умовних одиниць; середня молекулярна маса однієї амінокислоти дорівнює 100 умовних одиниць; молекула білка в середньому складається з 200 амінокислот; кожну амінокислоту в білковій молекулі кодує триплет нуклеотидів іРНК під час трансляції; для визначення довжини гена l...
52337. Запліднення і внутрішньоутробний розвиток людини 621 KB
  Мета: створити умови для: усвідомленого інформаційного запиту про ембріональний розвиток людини; розуміння учнями значущості знань про індивідуальний розвиток людини; формування морального відношення до зачаття і вагітності, відповідальності за життя, яке не народилось;
52338. Основні групи м’язів тіла людини. Фізичні якості м’язів 50 KB
  Обладнання: таблиця М’язи людини роздаткові картки підручник Біологія 9 клас автор А.Вступ До опорнорухової системи людини належить на лише скелет людини але й м’язи які мають властивість збуджуватися і скорочуватися і в результаті виконують основну функцію – рухову. До речі скелетні м’язи складають близько 40 маси тіла людини. Скелетні м’язи виконують функцію м’язового насоса при чому покращується рух венозної крові до серця.
52340. Суцвіття 550 KB
  Мета уроку: сформувати поняття суцвіттязнайомити учнів з функціями суцвіть розглянути їх будову і різноманітність; розвивати: вміння виділяти головне порівнюватиузагальнювати систематизувативміння розпізнавати суцвіття і тренувати їх у застосуванні набутих знань у нестандартних ситуаціях; виховувати: естетичні смаки учнів відповідальність за стан навколишнього середовища бережливе ставлення до природи. Обладнання: таблиці: Будова квітки Будова суцвіть Прості суцвіття Складні суцвіттякартки з кросвордом схемою та...
52341. Віруси 711.5 KB
  Вивчити будову класифікацію вірусів. Велика популярність персональних комп’ютерів разом з розвитком мережі Інтернет сприяла появі великої кількості різних шкідливих програм – вірусів. Постановка цілей і задач Мета: Ввести поняття €œВірус; Вивчити його будову; Класифікацію вірусів; З’ясувати їх вплив на живу та неживу природу. Деякі віруси вносять також власні білки необхідні для її реалізації особливо це характерно для вірусів що містять негативні РНК.
52342. Прес-конференція «Різноманітність птахів» 71.5 KB
  Мета: розширити знання учнів про представників класу Птахи показати їх різноманітність особливості будови та способу життя пристосування до середовища; ознайомити з характерними ознаками представників надряду Безкілеві птахи та Пінгвіни з представниками кілегрудих фауни України; продовжувати розвивати комунікативні та соціальні компетентності учнів; виховувати свідоме ставлення до природи її багатств та її захисту. Птахи це диво Їх велика кількість. Птахи Хоча ви вже багато вивчили про птахів але коли ви почуєте це слово кожний...
52343. Фантазія і творчість у роботі архітекторів 4.35 MB
  Мета уроку: Розширити уявлення про дизайн, ознайомити з наукою біонікою та показати її значення в житті людей. Спонукати до пізнання законів природи, пошуку біонічних форм. Навчити створювати контурні замальовки спрощених природних форм.
52344. Охорона біосфери 163 KB
  Тема уроку Охорона біосфери Мета: закріпити знання про біосферу як екологічну систему іі складові основні її властивості узагальнити і розширити знання учнів про напрямки діяльності людини по охороні біосфери заповідний фонд України познайомити з концепцією сталого розвитку складовими екоцентричної та антропоцентричної структури свідомості; вдосконалювати навички порівнювати робити висновки; розвивати навички вирішувати екологічні ситуації самостійно готувати матеріал до уроку створювати мультимедійну...