.RU

Лабораторная работа № методы криптографии. Генерация псевдобесконечных ключей на основе датчиков псевдослучайных чисел


Лабораторная работа № 2. МЕТОДЫ КРИПТОГРАФИИ. ГЕНЕРАЦИЯ ПСЕВДОБЕСКОНЕЧНЫХ КЛЮЧЕЙ НА ОСНОВЕ ДАТЧИКОВ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ 1. Цель работы
Знакомство с методами проектирования датчиков псевдослучайных чисел и генерации псевдобесконечных ключей.

2. Теоретические положения

Чем больше длина ключа, тем сложнее взломать такой ключ. Для генерации и воспроизводства псевдобесконечных ключей достаточно просто использовать генераторы псевдослучайных чисел. Генераторы псевдослучайных чисел имеют максимальный период m до того, как последовательность начнет повторятся. В задачах криптографии необходимо выбрать числа a и c таким образом, чтобы этот период m (и, таким образом длина последовательности ключа) был максимизирован. Можно доказать, что последовательность

Ti+1 = (aTi + c) mod m, (1)

где m = 2k и k – целое число > 2, имеет максимальную длину m тогда и только тогда, когда c нечетное и a mod 4 = 1.

Сначала можно выбрать битовое представление из имени файла или пароля. Если оно нечетное, то его можно использовать в качестве c. В противном случае его можно использовать как T0 и затем сгенерировать T1, T2, ..., Tk, где k – первое целое число, такое, что Tk нечетно. Далее Tk может быть использовано как c. Выбирая m = 2h-1, где h – длина слова в процессоре, a должно быть таким, что a (mod 4) = 1 и a незначительно больше, чем 2h/2. Эти ограничения для генератора ПСЧ необходимы для генерации случайных чисел, кажущихся случайными за счет поддержания большого периода.

^ ШИФР С «БЕСКОНЕЧНЫМ» КЛЮЧЕВЫМ СЛОВОМ

Выше было сказано, что при определенных условиях степень безопасности шифрования увеличивается с увеличением длины ключа. Возможно, лучше всего сгенерировать бесконечный ключ? Это вполне можно сделать, правда, за счет затрат на небольшие дополнительные вычисления. Рассмотрим метод «бесконечного» ключа для знаков. Начиная с порождающего числа S0 вычислим порождающую последовательность S1, S2, ..., SL, используя то же уравнение (1).

S1 = a S0 + c (mod m),

S2 = a S1 + c (mod m),

.

.

.

SL = a SL-1 + c (mod m),

где L – шесть самых младших битов S0, дополненных до 16.

^ ПОСЛЕДОВАТЕЛЬНОСТЬ КЛЮЧА

Последовательность ключа T1, T2, ... вычисляется из порождающей последовательности следующим образом: выберем K = 12 для умеренной степени безопасности или K = 18 для более высокой степени безопасности и затем определим N = 2k + K самых младших битов Si. Имея определенное N, сгенерируем первые N чисел в последовательности ключа на основе (2) и (3):

Tj = Sj, j = 1, ..., L, (2)

Tj = Tj-1 + Tj-1-L (mod m), L < j  N. (3)

После генерации первых N чисел последовательности ключа создают новую порождающую последовательность:

SN = SL,

SN + 1 = a  SN + c (mod m),

SN + 2 = a  SN + 1 + c (mod m), ...,

SN + L = a  SN + L - 1 + c (mod m).

Имея созданную новую порождающую последовательность, мы можем теперь получить другие N элементов последовательности ключа, используя выражения (4) и (5):

Tj = Sj, j = N + 1, N + 2, ..., N + L, (4)

Tj = Tj - 1 + Tj - 1 - L (mod m), N + L < j  2N. (5)

Заметим, что выражения (2) и (4) отличаются только значениями j, которые в них используются. То же справедливо для уравнений (3) и (5).

Следует поочередно генерировать N элементов последовательности ключа и L элементов порождающей последовательности.

3. Задание на работу

Получить вариант задания у преподавателя.

  1. Исследовать равномерность датчика (проверить гипотезу о равномерности распределения совокупности ДСЧ).

  2. Определить период ДСЧ для различных параметров.

  3. Исследовать автокорреляцию совокупности ДСЧ для различных параметров на глубину 100 отсчетов.

  4. Построить гистограмму частоты появления каждого возможного значения совокупности ДСЧ.

4. Оборудование

ПЭВМ с архитектурой IBM PC, операционная система – Windows 95, интегрированная среда – C++ Builder или Delphi версии не ниже 3.0

5. Порядок выполнения работы

  1. Согласно полученному варианту задания разработать и отладить ПО для исследования датчика псевдослучайных чисел.

  2. Представить результаты исследования в графическом виде.

  3. Оформить отчет.

6. Оформление отчета

Отчет должен содержать:

7. Контрольные вопросы

  1. Каким образом проектируются датчики псевдослучайных чисел?

  2. Что влияет на период датчика псевдослучайных чисел?

  3. Что такое коэффициент автокорреляции?

  4. Каким образом определяют закон распределения, по которому функционирует датчик псевдослучайных чисел?

  5. Укажите способ программной реализации определения периода датчика псевдослучайных чисел, требующий минимальных затрат оперативной памяти.

  6. В каком случае при исследовании датчиков псевдослучайных чисел используют критерий Дабрина – Уотсона?
^ Лабораторная работа № 3. МЕТОДЫ ДВУХКЛЮЧЕВОЙ КРИПТОГРАФИИ 1. Цель работы
Знакомство с методами двухключевой криптографии и принципами формирования общих ключей Диффи и Хеллмана.

2. Теоретические положения

СТАНДАРТ RSA (криптография с асимметричным ключом)

Электронную (цифровую) подпись обычно реализуют на основе криптографического алгоритма с открытым ключом. Такие алгоритмы строятся на основе двух ключей (ключ шифратор (КШ), ключ дешифратор (КД)). Открытым может быть один из ключей, другой же обязательно секретным. На рис. 1 представлена система открытого распространения ключей Диффи и Хеллмана.



Рис. 1. Система открытого распространения

ключей Диффи и Хеллмана


При обмене информацией первый пользователь выбирает случайное число X1, из целых чисел 1,...,n-1. Это он держит в секрете, а другому пользователю посылает число



где m – положительное целое, меньшее n. Аналогично поступает и второй пользователь. В результате они могут вычислить z

.

Для того, чтобы вычислить z первый пользователь возводит y2 в степень X1, аналогичным способом поступает и второй пользователь. Не зная X1 и X2, злоумышленник не может вычислить z, имея только y1 и y2.

Эквивалентность этой проблемы проблеме вычисления дискретного логарифма есть главный вопрос криптографии с открытым ключом. До настоящего времени нет простого решения проблемы.

Например, если простое число длиной 1000 бит, то для вычисления y1 из X1 потребуется около 2000 умножений 1000 битовых чисел. С другой стороны, имеющимися алгоритмами вычисления логарифмов над полем GF(n) потребуется 2100 1030 операций. Подобрать же z злоумышленнику, не зная m, n, X1 или X2 за разумное время практически невозможно (см. табл. 1). В таблице 1 представлено сравнение рассмотренного ниже (в следующей лабораторной работе) одноключевого криптографического стандарта DES и двухключевого RSA.

Таблица 1

Характеристика

DES

RSA

1

2

3

вид криптографического алгоритма

Одноключевой

Двухключевой

Скорость работы

Быстрая

Медленная

Наименее затратный криптоанализ

Перебор по всему ключевому пространству

Разложение модуля

Стойкость

Теоретическая

Практическая

Временные затраты на криптоанализ

Столетия

зависят от длины ключа

Время генерации ключа

Миллисекунды

Десятки секунд

Тип ключа

Симметричный

Асимметричный

Длина ключа

56 бит

300 – 600 бит

Проблема произведений произведение m-битных
сомножителей

Основная проблема при формировании общих ключей Диффи и Хеллмана заключается в реализации произведений сомножителей большой разрядности (более 32-х бит). Рассмотрим метод формирования произведения сомножителей большой разрядности (m – разрядность сомножителей; L – количество 32-х битных слов каждом в сомножителе) на основе команд умножения 32-х битных сомножителей.

m = 64, L = 2

A = (a0 + a1  232);

B = (b0 + b1  232);

A  B = (a0 + a1  232)  (b0 + b1  232) = a0  b0 + 232  (a1  b0 + a0  b1) + 264  a1  b1.

Графическая интерпретация произведения 64-битных сомножителей

0

31

32

63

64

95

96

127

a0  b0













a1  b0 + a0  b1













a1  b1




m = 96, L = 3

A = (a0 + a1  232 + a2  264);

B = (b0 + b1  232 + b2  232);

A  B = (a0 + a1  232 + a2  264)  (b0 + b1  232 + b2  232) = a0  b0 + 232  (a1  b0 + a0  b1) + 264  (a0  b2 + a1  b1 + a2  b0) + 296  (a1  b2 + a2  b1) + 2128  a2  b2.

Графическая интерпретация произведения 96-битных сомножителей

0

31

32

63

64

95

96

127

128

159

160

191

a0  b0
















a1  b0 + a0  b1
















a0  b2 + a1  b1 + a2  b0
















a1  b2 + a2  b1
















a2  b2


Алгоритм умножения L-словных сомножителей



Функция умножения L-словных сомножителей

// A – массив 32-х битных слов 1-го сомножителя;

// B – массив 32-х битных слов 2-го сомножителя;

// P – массив 32-х битных слов произведения;

// L – количество 32-х битных слов в каждом сомножителе.

void Mmul(unsigned long int* A, unsigned long int* B,

unsigned long int* P, int L){

int q, j, k;

unsigned long int Pm, Ps, r_A, r_B, r_P;

for(q = 0; q < (L + L); q++) P[q] = 0;

for(q = 0; q < (L + L - 1); q++){

Pm = 0;

Ps = 0;

r_P = 0;

for(j = 0; j < L; j++){

if(j > q) break;

for(k = 0; k < L; k++){

if((k + j) > q) break;

if((k + j) == q){

r_A = A[j];

r_B = B[k];

asm{

mov eAX, r_A

mov eBX, r_B

mul eBX

add Pm, eAX

adc Ps, eDX

adc r_P, 0

}

}

}

}

P[q] = P[q] + Pm;

P[q + 1] = P[q + 1] + Ps;

if(r_P != 0) P[q + 2] = P[q + 2] + r_P;

}

}

3. Задание на работу

Получить вариант задания у преподавателя для формирования общего ключа Диффи и Хеллмана.

Вариант

m

n

X1

X2

1

15

2128

10

10

2

13

2256

8

9

3

13

2192

9

7

4

13

2512

11

7

5

11

2128

10

10

6

11

2256

8

9

7

11

2192

9

7

8

9

2192

9

7

9

13

2512

11

7

10

15

2128

10

10

11

9

2256

8

9


4. Оборудование

ПЭВМ с архитектурой IBM PC, операционная система – Windows 95, интегрированная среда – C++ Builder или Delphi версии не ниже 3.0

5. Порядок выполнения работы

  1. Согласно полученному варианту задания разработать и отладить ПО для формирования общего ключа Диффи и Хеллмана.

  2. Программно замерить время формирования одного общего ключа Диффи и Хеллмана.

  3. Оформить отчет.

6. Оформление отчета

Отчет должен содержать:

7. Контрольные вопросы

  1. Какие ассемблерные команды предназначены для обработки 32-х разрядных операндов?

  2. В каких случаях находят применение двухключевые криптографические методы?

  3. Разработать функцию произведения L1 и L2 –словных сомножителей (L1 и L2 – количество 32-х битных слов в первом и втором сомножителе).

  4. Каким образом программно измеряется время формирования общего ключа Диффи и Хеллмана?

  5. Приведите основные характеристики стандарта RSA.

  6. Какую минимальную разрядность общего ключа Диффи и Хеллмана целесообразно использовать?

menya-zovut-kirillov-dmitrij-mihajlovich-foto-1-ya-odin-iz-dvuh-prodolzhatelej-zheleznodorozhnoj-dinastii-rodilsya-ya-v-1990-godu-poluchil-polnoe-srednee-obrazova.html
menyajlov-aleksej-smotrite-smotrite-vnimatelno-o-volki-stranica-10.html
menyu-mir-vozmozhnostej-otzivi-o-knige-4-h-chasovaya-rabochaya-nedelya.html
menyu-stolovoj-v-gostinice-sokol-2012-god-na-5-dnej.html
mer-blagoveshenska-nameren-osporit-svoe-isklyuchenie-iz-edinoj-rossii-radio-rsn-novosti-16-07-2008-shestakova-anna-15-00-12.html
mer-pervij-i-poslednij-programma-uglublennih-medosmotrov-prinesla-lipeckim-poliklinikam-bolee-10-millionov-rublej.html
  • school.bystrickaya.ru/drevnie-observatorii-chast-3.html
  • school.bystrickaya.ru/drevnyaya-rus-v-x-xii-vv.html
  • uchebnik.bystrickaya.ru/ukazom-prezidenta-respubliki-belarus-ot-16-01-201235-o-povishenii-pensij.html
  • shkola.bystrickaya.ru/razdel-iii-resursnoe-obespechenie-sistemi-obrazovaniya-doklad-nachalnika-mu-upravlenie-obrazovaniya-g-gorno-altajska.html
  • universitet.bystrickaya.ru/trete-zasedanie-zakonchilos-neskolko-chasov-tomu-nazad-vsyakij-raz-kogda-moj-advokat-vipalival-v-vozduh-virazhenie-svoboda-tvorchestva-menya-ohvativalo-derzk-stranica-13.html
  • ekzamen.bystrickaya.ru/severoamerikanskih-indejcev.html
  • textbook.bystrickaya.ru/gost-28567-90.html
  • universitet.bystrickaya.ru/trebovaniya-bezopasnosti-vvedenie-spravochnik-ustanovki-pozharotusheniya-avtomaticheskie.html
  • reading.bystrickaya.ru/konspekt-lekcii-metodika-formalizovannogo-sostavleniya-spravochnih-i-rekomendatelnih-annotacij.html
  • learn.bystrickaya.ru/filippo-brunelleski.html
  • zadachi.bystrickaya.ru/proizvoditelnost-truda-5.html
  • spur.bystrickaya.ru/metodicheskie-rekomendacii-dlya-prepodavatelya-disciplina-mezhdunarodnij-menedzhment-specialnost-080102-mirovaya-ekonomika.html
  • tasks.bystrickaya.ru/315-osnovnoj-zakon-razvitiya-materialnih-obektov-a-v-kotov-zakat-rinochnoj-civilizacii.html
  • writing.bystrickaya.ru/glava-8-glen-charlz-kuk.html
  • kolledzh.bystrickaya.ru/7-struktura-oop-po-modulyam-kompleks-metodicheskih-materialov-osnovnoj-obrazovatelnoj-programmi-podgotovki-magistrov.html
  • report.bystrickaya.ru/istoriya-kulturnoj-zhizni-gorodov-yuga-dalnego-vostoka-rossii-vtoraya-polovina-h-i-h-nachalo-hh-veka-stranica-3.html
  • college.bystrickaya.ru/13-mesto-kursa-v-professionalnoj-podgotovke-vipusknika-uchebno-metodicheskij-kompleks-disciplini-russkij-yazik.html
  • otsenki.bystrickaya.ru/socialnaya-aktivnost-i-vneshnie-svyazi-uchrezhdeniya-publichnij-otchet-za-200910-uchebnij-god-municipalnoe-obsheobrazovatelnoe.html
  • uchenik.bystrickaya.ru/celevaya-programma-povishenie-bezopasnosti-dorozhnogo-dvizheniya-v-respublike-tatarstan-na-2008-2009-godi-oglavlenie-stranica-6.html
  • turn.bystrickaya.ru/pod-redakciej-n-m-nazarovoj-stranica-9.html
  • ucheba.bystrickaya.ru/programma-minimum-kandidatskogo-ekzamena-po-specialnosti-24-00-01-teoriya-i-istoriya-kulturi.html
  • ekzamen.bystrickaya.ru/smirnov-v-i-kurs-visshej-matematiki-tom-i-pred-l-d-faddeeva-pred-i-prim-e-a-grininoj-24-e-izd.html
  • assessments.bystrickaya.ru/dve-shkola-38-i-shkola-5-zdes-bilo-produmanno-vsyo-dlya-uchashihsya.html
  • bukva.bystrickaya.ru/sobranie-sochinenij-v-chetireh-tomah-tom-m-pravda-1981-g-ocr-bichkov-m-n-stranica-29.html
  • letter.bystrickaya.ru/obespechenie-prava-grazhdan-na-informaciyu-cherez-rajonnuyu-gazetu-utverdit-otchet-glavi-rajona-itogi-socialno-ekonomicheskogo.html
  • pisat.bystrickaya.ru/tablica-25-temi-prakticheskih-zanyatij-samostoyatelnaya-rabota-studentov-metodicheskie-rekomendacii-po-discipline.html
  • kolledzh.bystrickaya.ru/5-instrukciya-po-podgotovke-zayavok-na-uchastie-v-konkurse-a-yu-konkov-glavnij-inzhener-zamestitel-generalnogo-direktora.html
  • literatura.bystrickaya.ru/reglament-podgotovki-svodnogo-doklada-o-rezultatah-monitoringa-effektivnosti-deyatelnosti-organov-mestnogo-samoupravleniya-gorodskih-okrugov-i-municipalnih-rajonov-arhangelskoj-oblasti-stranica-2.html
  • letter.bystrickaya.ru/o-provedenii-akkreditacionnoj-ekspertizi-municipalnogo-obsheobrazovatelnogo-uchrezhdeniya-uhtinskij-tehnicheskij-licej-im-g-v-rassohina.html
  • universitet.bystrickaya.ru/temi-lekcij-lekciya-1-antropologiya-i-etnopsihologiya-kak-nauka-predmet-zadachi-i-metodi-issledovaniya-lekciya-2.html
  • knowledge.bystrickaya.ru/metodicheskie-ukazaniya-po-vipolneniyu-i-oformleniyu-diplomnih-rabot-dlya-studentov-ekonomicheskih-specialnostej-dnevnoj-i-zaochnoj-form-obucheniya.html
  • esse.bystrickaya.ru/rabochaya-uchebnaya-programma-po-discipline-osnovi-socialnoj-raboti-dlya-specialnosti-050711-socialnaya-pedagogika-po-ciklu-dpp-f-05-disciplini-predmetnoj-podgotovki-federalnij-komponent.html
  • prepodavatel.bystrickaya.ru/tipi-vezhlivogo-i-nevezhlivogo-povedeniya-i-ih-znakovie-harakteristiki.html
  • tests.bystrickaya.ru/kontakti-s-druzhestvenno-bernd-fon-vittenburg-shah-planete-zemlya.html
  • tasks.bystrickaya.ru/1-oktyabrya-reshenie-oon.html
  • © bystrickaya.ru
    Мобильный рефератник - для мобильных людей.