Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекция 9 - Продолжение лекции 8 - Шифрование

.pdf
Скачиваний:
2
Добавлен:
18.02.2024
Размер:
1.56 Mб
Скачать

Безопасная передача данных в беспроводных сетях

шифрование

Задачи криптографии:

Конфиденциальность — невозможность узнать содержание сообщения

Аутентификация — подтверждение личности отправителя

Целостность — сообщение не было изменено третьей стороной

Отказ от ответственности — предотвращение отказа автора за создание или отправку сообщения.

Шифрование информации - это преобразование открытой информации в зашифрованную и наоборот:

С = Ek1(M),

где M (message) - открытая информация, С (cipher text) - полученный в результате зашифрования шифртекст, E (encryption) - функция зашифрования, выполняющая криптографические преобразования над M, k1 (key) - параметр функции E, называемый ключом зашифрования.

Ключ - конкретное секретное состояние некоторых параметров алгоритма криптографического преобразования, обеспечивающее выбор одного преобразования из совокупности всевозможных для данного алгоритма преобразований (ГОСТ 28147-89)

Для получения в результате расшифрования корректного открытого текста необходимо одновременное выполнение следующих условий:

1.Функция расшифрования должна соответствовать функции зашифрования.

2.Ключ расшифрования должен соответствовать ключу зашифрования.

При отсутствии верного ключа k2 получить исходное

сообщение M' = M с помощью правильной функции D невозможно. Под словом "невозможно" в данном случае обычно понимается невозможность вычисления за реальное время при существующих вычислительных ресурсах.

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

Классификация алгоритмов шифрования

Алгоритмы шифрования

Бесключевые – не используют ключи

Одноключевые – используют

 

Двухключевые – используют

один параметр как

 

два параметра как секретный

секретный ключ

 

и открытый ключи

 

 

 

Хэширование

 

Симметричное

 

Асимметричное

 

Электронная

 

шифрование

 

шифрование

 

подпись

 

 

 

 

 

 

 

 

 

 

 

Блочное Поточное

Бесключевые алгоритмы: используют хэш-функции.

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

Результат, производимый хеш-функцией, называется «хеш-суммой» или «хешем», а входные данные - «сообщением».

Для хеш-функции выполняются следующие условия:

1.хеш-функция является детерминированной, то есть одно и то же сообщение приводит к одному и тому же хеш-значению

2.значение хеш-функции быстро вычисляется для любого сообщения

3.невозможно найти сообщение, которое дает заданное хешзначение

4.невозможно найти два разных сообщения с одинаковым хешзначением

5.небольшое изменение в сообщении изменяет хеш настолько сильно, что новое и старое значения кажутся некоррелирующими

Примеры бесключевых алгоритмов

MD2 — криптографическая хеш-функция, разработанная Роном Ривестом, RFC 1319. На входе сообщение произвольный длины, размер хеша — 128 бит. Развитие – MD5. Алгоритмы MD(x)

основаны на методе вычислений в цикле с использованием простых логических операций типа OR, XOR, AND, NOT, поэтому становится возможным построение коллизий с одинаковым, заранее выбранным префиксом.

Sha-1/2 - Алгоритм криптографического хеширования, RFC 3174. Для входного сообщения произвольной длины до 2264-1 ,генерирует 160битное хеш-значение, называемое также дайджестом сообщения.

Используется во многих криптографических приложениях и протоколах.

SHA-3 (Keccak) – алгоритм хеширования переменной разрядности. Keccak основан на конструкции Sponge (Губка), которая используется для создания функции с произвольной длиной на входе и произвольной длиной на выходе на основе преобразований перестановки

Симметричное шифрование – один ключ для шифрования и расшифровывания, используют длину ключа в диапазоне от 40 до 256 бит.

При потере секретного ключа зашифрованное сообщение может быть легко взломано

Высокая производительность, обеспечивающая быстрое шифрование данных

+

}

Зашифрованное сообщение

Зашифрованное сообщение

}

 

 

 

+

 

PSK

 

 

 

 

 

 

 

PSK

 

Симметричные блочные: шифруется сразу блок текста размером 64 или 128 бит.

Симметричные потоковые: шифрование происходит побитно или побайтно.

Скорость шифрования выше чем у блочных

Примеры алгоритмов симметричного шифрования

Data Encryption Standard (DES): шифрует данные с использованием блоков размером 64 бита и размером ключа 54 бита.

Triple Data Encryption Standard (3DES): версия DES, выполняет процесс шифрования трижды. Этап 1: берет данные открытого текста и выполняет шифрование для создания зашифрованного текста. Этап 2: использует зашифрованный текст в качестве входных данных и выполнит его шифрование. Этап 3: выполняет шифрование зашифрованного текст из этапа

2.3DES использует ключи размером 112 бит и 168 бит.

Advanced Encryption Standard (AES): использует ключи размером 128, 192 и

256бит. Он выполняет шифрование данных в блоках фиксированного размера: 128, 192 и 256 бит.

Software-Optimized Encryption Algorithm (SEAL): алгоритм потокового шифрования, который использует размер ключа 160 бит.

Rivest Cipher (RC): это серия наборов шифров, созданных Роном Ривестом (RC2, RC3, RC4, RC5 и RC6). Наиболее распространён RC4, потоковый шифр, использующий размер ключа до 256 бит. Уязвим при повторном использовании ключа или связанных ключах

Асимметричное шифрование: используется два ключа – один для шифрования, другой для расшифровывания. При потере одного из ключей взлом невозможен.

Асимметричное шифрование использует размер ключа от 512 до

4096 бит.

public

+

}

Зашифрованное сообщение

 

 

 

Зашифрованное сообщение

}

 

 

 

 

 

 

 

 

 

private

 

 

+

 

public

Примеры алгоритмов асимметричного шифрования

Diffie-Hellman (DH): используется для безопасной доставки пар ключей по незащищенной сети. Использует ключи разного размера: группа 1DH - 768 бит, группа 2DH - 1024 бит, группа 5DH - 1536 бит, группа 14DH - 2048 бит, группа 15DH - 3072 бит, группа 16DH - 4096 бит.

Digital Signature Standard (DSS): используется для цифровых подписей. Алгоритм цифровой подписи (DSA) - это алгоритм с открытым ключом, который использует схему подписи ElGamal. Размеры ключей варьируются от

512 до 1024 бит.

Rivest-Shamir-Adleman (RSA): использует пары открытого и закрытого ключей между устройствами размером от 512 до 2048 бит.

EIGamal: использует пару открытого и закрытого ключей для шифрования данных, основан на процессе согласования ключей DH. Увеличивает размер сообщения в 2 раза

Elliptical Curve (EC): использует кривые вместо чисел. EC использует ключи меньшего размера в мобильных устройствах.