Функционирование криптографических систем при конкретных параметрах, страница 2

·  EllCalcGF2n.exe

·  Encryption.exe

·  CryptCalc.exe

 Программы разработаны студентами - дипломниками МЭИ(ТУ) Гамовым В.С. и Шестаковым Е.В. (2003 год) под руководством профессора А.Б.Фролова.


1.Формирование индивидуального ключа задания.

При выполнении курсовой работы используется индивидуальный ключ k(N), который вычисляется по номеру студента в алфавитном списке группы следующим образом:

а) перевести десятичную запись (N)10 номера N в шестизначную двоичную запись (N)2 , например, (5)10 =(000101)2, (37)10 = =(100101)2;

б) образовать инверсию  двоичного кода (N)2 ,например, =(111010)2, =(011010)2;

в) сравнивая двоичные коды как двоичные числа, взять

k1 (N) = max(,(n)2), k2 (n)= min(,(N)2), например,

k1 (37) = max((011010)2, (100101)2)=(100101)2,

k2(37)= min ((011010)2, (100101)2) = (011010)2;

г) получить индивидуальный ключ

k(N)= k1(N)k2 (N)k1(N)

приписыванием одного к другому двоичных кодов k1 (N), k2 (N), k1 (N), например,

k(37)= (100101011010100101).

2. Некоторые обозначения:

p(s) -  простое числа, имеющее длину  s десятичных знаков. Такое число получается после ввода в поле Модульное число s знаков 9 при исполнении функции генерации простого числа.

 Например, p((1[k(24)]6)10)=p((111000)2)=p((56)10) есть простое число длиной 56 десятичных знаков. Для его получения надо вести 56 девяток а поле Модульное число и выполнить функцию генерации простого числа

j(n) - значение функции Эйлера для числа n.