АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Пример выполнения Задания3

Читайте также:
  1. A. знания о предметной области, которые после их выполнения не изменяются
  2. C) Функциональные сдвиги достигнутые в результате выполнения упражнения
  3. C. развитие знаний в форме дообучения на дополнительной последовательности примеров
  4. C. развитие знаний в форме дообучения на дополнительной последовательности примеров
  5. CПИСОК ОБЯЗАТЕЛЬНЫХ МАНИПУЛЯЦИЙ, ПРЕДУСМОТРЕННЫХ ДЛЯ ВЫПОЛНЕНИЯ НА ПРАКТИКЕ ПО ПРОФИЛЮ СПЕЦИАЛЬНОСТИ «СЕСТРИНСКОЕ ДЕЛО В ХИРУРГИИ»
  6. I. Организация выполнения выпускной квалификационной работы
  7. II. Организация выполнения выпускной квалификационной
  8. II. ПЕРЕЧЕНЬ ЗАДАНИЙ ДЛЯ ВЫПОЛНЕНИЯ РАБОТЫ
  9. II. Ход выполнения
  10. II.Примерная тематика курсовых работ
  11. III. Задания для самостоятельного выполнения.
  12. III. После этого раненую конечность лучше всего зафиксировать, например, подвесив на косынке или при помощи шин, что является третьим принципом оказания помощи при ранениях.

Алгоритм Диффи-Хеллмана

Открытый элемент Р задан в таблице 3 – графа 2. Найти примитивный элемент поля. Считая, что секретный ключ каждого участника равен номеру студента в списке группы i, вычислить ключ обмена для участника с номером 35 – i по алгоритму Диффи-Хэллмана.

 

Вариант № 7, группа 2091 (№ 1)

Номер в списке группы i = 7

Номер группы k = 1

P = 43

 

Открытый элемент P = 43. Найти примитивный элемент поля. Секретный ключ каждого участника i = 7, вычислить ключ обмена для участника с номером 35.

 

GF(43) = <0, 1, 2, 3, …, 40, 41, 42>

Найдем примитивный элемент поля GF(43).

 

Требуется найти такое число, принадлежащее интервалу [2,42], которое при возведении в 42-ю степень по модулю 43 будет давать в результате единицу. Если же единица будет получена раньше, чем при возведении в 42-ю степень, результаты возведения в степень начнут повторяться, и через выбранный элемент не удастся представить все элементы поля. Исходя из таких соображений, получаем несложный алгоритм нахождения примитивных элементов поля GF(43).

Алгоритм нахождения примитивных элементов поля GF(43).

 

 

int _tmain(int argc, _TCHAR* argv[])

{

long int mem, i, j, num, deg, modul, res;

unsigned char mas[44];

deg = 0; modul = 43; mem = 2;

while (mem < 42)

{

num = mem; deg = 0;

while (deg!= 42)

{

res = 1; deg = 0;

for (i = 0; i < 42; i++) mas[i] = 0;

do

{

res = res*num; res = res % modul;

deg++; mas[deg] = res;

}

while(res!= 1);

num++;

}

std::cout << num-1 << std::endl;

for (i = 0; i < 42; i++)

{

for (j = 0; j < 42; j++)

{

if ((i!= j) && (mas[j] == mas[i]))

std::cout << "Wrong" << std::endl;

}

mem = num;

}

}

return 0;

}

 

 

В результате выполнения программы получим следующие значения:

3, 5, 12, 18, 19, 20, 26, 28, 29, 30, 33, 34

 

Выберем значение α = 20. Найдем элементы поля.

 

α = 20 α2 = 13 α3 = 2 α4 = 40 α5 = 26 α6 = 4 α7 = 37 α8 = 9 α9 = 8 α10 = 31 α11 = 18 α12 = 16 α13 = 19 α14 = 36 α15 = 32 α16 = 38 α17 = 29 α18 = 21 α19 = 33 α20 = 15 α21 = 42 α22 = 23 α23 = 30 α24 = 41 α25 = 3 α26 = 17 α27 = 39 α28 = 6 α29 = 34 α30 = 35 α31 = 12 α32 = 25 α33 = 27 α34 = 24 α35 = 7 α36 = 11 α37 = 5 α38 = 14 α39 = 22 α40 = 10 α41 = 28 α42 = 1

 

Секретный ключ участника А: XA = 7.

Секретный ключ участника B: YB = 35-7 = 28.

 

Открытый ключ участника А:

Открытый ключ участника B:

 

15 * 208 = 6

 

Обменный ключ участника А:

Обменный ключ участника B:

Значения обменного ключа для А и В совпадают.

Обменный ключ: K = 6

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)