Студопедия
Главная страница | Контакты | Случайная страница

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

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

Читайте также:
  1. Алгоритм взятия мазка из носа и зева.
  2. Алгоритм внутривенной инъекции
  3. Алгоритм выбора Н или НН в разных частях речи
  4. Алгоритм выполнения задания
  5. Алгоритм выполнения расчетов.
  6. Алгоритм действий медсестры при критическом снижении температуры
  7. Алгоритм действия.
  8. Алгоритм действия.
  9. Алгоритм действия.
  10. Алгоритм Деккера

Цель алгоритма состоит в том, чтобы два участника могли безопасно обменяться ключом, который в дальнейшем может использоваться в каком-либо алгоритме симметричного шифрования. Сам алгоритм Диффи-Хеллмана может применяться только для обмена ключами.

Алгоритм основан на трудности вычислений дискретных логарифмов. Дискретный логарифм определяется следующим образом. Вводится понятие примитивного корня простого числа Q как числа, чьи степени создают все целые от 1 до Q - 1. Это означает, что если A является примитивным корнем простого числа Q, тогда числа A mod(Q), A2 mod(Q),..., AQ - 1 mod(Q) являются различными и состоят из целых от 1 до Q - 1 с некоторыми перестановками. В этом случае для любого целого Y < Q и примитивного корня A простого числа Q можно найти единственную степень Х, такую, что Y = AХ mod(Q), где 0 ≤ X ≤ (Q - 1). Степень X называется дискретным логарифмом, или индексом Y, по основанию A mod(Q). Это обозначается как X = indA, Q (Y).

Теперь опишем алгоритм обмена ключей Диффи-Хеллмана.

Предполагается, что существуют два известных всем числа: простое число Q и целое A, которое является примитивным корнем Q. Теперь предположим, что пользователи I и J хотят обменяться ключом для алгоритма симметричного шифрования. Пользователь I выбирает случайное число Хi < Q и вычисляет Yi = AXimod(Q). Аналогично пользователь J независимо выбирает случайное целое число Хj < Q и вычисляет Yj = AXjmod(Q).. Каждая сторона держит свое значение Х в секрете и делает значение Y доступным для другой стороны. Теперь пользователь I вычисляет ключ как Кi = YjXimod(Q), и пользователь J вычисляет ключ как Кj = YiXjmod(Q). В результате оба получат одно и то же значение: K = YjXi mod(Q) = (AXj mod(Q))Ximod(Q) = (AXj)Ximod(Q) по правилам модульной арифметики = AXj Xi mod(Q) = (AXi) Xj mod(Q) = (AXimod(Q))Xjmod(Q) = (Yi)Xjmod(Q)

Таким образом, две стороны обменялись секретным ключом. Так как Хi и Хj являются закрытыми, противник может получить только следующие значения: Q, A, Yi и Yj. Для вычисления ключа атакующий должен взломать дискретный логарифм, т.е. вычислить Xj = indA, Q (Yj).

Безопасность обмена ключа в алгоритме Диффи-Хеллмана вытекает из того факта, что, хотя относительно легко вычислить экспоненты по модулю простого числа, очень трудно вычислить дискретные логарифмы. Для больших простых чисел задача считается неразрешимой.

 

 

19. Агоритм шифрування DES (Data Encryption Standard) — это симметричный алгоритм шифрования, то есть один ключ используется здесь как для зашифровывания, так и для расшифровывания сообщений. Алгоритм имеет блоки по 64 бит и основан на 16- кратной перестановке данных; для зашифровывания он использует ключ длиной 56 бит. Существует несколько режимов DES, например Electronic Code Book (ECB) и Cipher Block Chaining (CBC). 56 бит — это 8 семибитовых ASCII -символов, то есть секретный ключ не может иметь длину свыше 8 символов. Если вдобавок использовать только буквы и цифры, то количество возможных вариантов будет существенно меньше максимально возможных 256.




Дата добавления: 2015-02-16; просмотров: 110 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2025 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав