- Контроль целостности сообщений
- Информационная безопасность и защита информации (архив ИПМ бакалавры 2010-2021г, Богомолов)
- 4 Лекция. Контроль целостности данных. Хеш-функции. Имитовставка. ЭЦП
- Контроль целостности данных.
- Полная копия данных.
- Контрольная сумма.
- ГОСТ Р 34.11-94
- Имитовставка (MAC, message authentication code — код аутентичности сообщения)
- Протоколирование и аудит, шифрование, контроль целостности
- Контроль целостности
- Цифровые сертификаты
Контроль целостности сообщений
Контрольная сумма
Контрольная сумма—некоторое значение, рассчитанное изПоследовательностиданных путѐм применения определѐнногоалгоритма, используемое для проверки правильности передачиданных (для исключения влияния каких-либо помех припередаче).
F:Сообщения n,n+1,n+2…бит->контрольная сумма nбит.
Добавляется к блоку данных:
Продольный контроль четности (XOR )
Общий принцип постоения:
Входное сообщение рассматривается как
последовательность n-битных блоков.Сообщение обрабатываетсяпоследовательно блок за блоком, исоздается m-битное значение кода.
(продольный избыточный контроль).
побитный XOR всех блоков:
M= bi1| bi2| . . .| bik
Сi = bi1 +bi2+. . .+bik
ЗдесьСi -i-ыйбитхэш-кода, 1 i n.k -число n-битных блоков входа.bij -i-ый бит в j-омблоке.-операция XOR.В результатеполучается хэш-код длины n, известныйкак продольный избыточный контроль. Этоэффективно при случайных сбоях дляпроверки целостности данных.Деление сообщения на 32-или 16-битные слова и ихсуммирование, что применяется, например, в TCP/IP.
Ротационный контроль четности
(RXOR ):
однобитный циклический сдвиг послевычисления кода:
1. Установить n-битный код в ноль.
2. Для каждого n-битного блокаданных выполнить следующиеоперации:
– сдвинуть циклически текущийкод влево на один бит;
– выполнить операцию XOR дляочередного блока и кода.
Циклический избыточный код
(CRCангл.Cyclicredundancycode)
Алгоритм CRC базируется на свойствах деления состатком двоичных многочленов:
При «правильном» выборе порождающегомногочлена G(x), остатки от деления на него будутобладать нужными свойствами—хорошейперемешиваемостью и быстрым алгоритмомвычисления. Второе обеспечивается тем, что степеньпорождающего многочлена обычно пропорциональнадлине байта или машинного слова (например 8, 16или 32).
19. Контроль целостности. Защита от намеренных изменений. Недостатки XOR и RXOR в режиме ECB. Недостатки XOR в режиме CBC. Шифрование, хэш-функция, код аутентичности.
Контроль целостности
Способы контроля целостности.
1.Шифрование (симметричное,
Шифрование может быть использовано для контроляцелостности сообщения при условии структурированностисообщения. Пример: структурированность протокола пакетаIPv4 позволяет использовать шифрование для контроляцелостности.
2.Хеш-функция.
Хэш-функцией называется односторонняяфункция, предназначенная для получения хэш-кода (дайджеста,»отпечатков пальцев«) файла,сообщения или некоторого блока данных.
Хэш-код создается функцией Н:
hM= H (M), где М является сообщениемпроизвольной длины и hMявляется хэш-кодомфиксированной длины.
3.Код аутентичности сообщения
Простым способом преобразовать однонаправленную хэш-функцию вимитовставку (MAC) является шифрование хэш-значения симметричнымалгоритмом. Такой MAC может быть преобразован в однонаправленную хэш-функцию с помощью раскрытия ключа.
Другим способом является выработка имитовставки (MAC) с помощьюспециализированного алгоритма имитозащиты на основе симметричногоалгоритма шифрования.
CBC-MAC: Простейшим способом создать зависящую от ключаимитовставку—шифрование сообщения блочным алгоритмом в режимахCBC или CFB. Имитовставкой является последний шифрованный блок,зашифрованный в этих режимах. Потенциальная проблема, связанная сбезопасностью этого метода, состоит в том, что получатель должен знатьключ, и этот ключ позволяет ему генерировать сообщения с тем жезначением имитовставки, что и у присланного сообщения, таким образом,имитовставка на основе симметричного шифра не дает знания—отправитель или получатель сформировал эту имитовставку. Отсюда следует,что имитовставка на основе симметричного шифра не может заменять собойэлектронную подпись.
Источник
Информационная безопасность и защита информации (архив ИПМ бакалавры 2010-2021г, Богомолов)
4 Лекция. Контроль целостности данных. Хеш-функции. Имитовставка. ЭЦП
Контроль целостности данных.
Целостности данных — при котором отсутствует любое ее изменение либо изменение осуществляется только преднамеренно субъектами, имеющими на него право.
Методы контроля целостности данных:
- Полная копия данных
Полная копия данных.
Создаются полные копии данных и потом сверяются.
- простота реализации
- полный контроль данных (до бита)
- большой объем
- копии можно подменить
- копиями можно воспользоваться (например: если данные — пароль)
Рис. Контроль целостности с помощью полной копии данных
- контроль целостности файлов
Контрольная сумма.
Контрольная сумма — значение, рассчитанное по входным данным с помощью определённого алгоритма.
- высокая скорость вычисления
- малый размер
- стандартный размер
- можно подменить
- для одного значения существует множество исходных данных
- можно подобрать исходные данные к значению за приемлемое время (например: получить пароль)
Рис. Контроль целостности с помощью контрольной суммы
Примеры контрольных сумм: CRC8, CRC16, CRC32
исходный текст: Контроль целостности данных
crc32 (длина 32 бита)
- контроль целостности файлов
- контроль передаваемых данных по каналам связи
- контроль целостности при считывании данных (например: c HDD)
Хеш (хэш, криптографический хеш) — значение, рассчитанное по входным данным с помощью криптографического алгоритма.
- малый размер
- стандартный размер
- нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
- низкая скорость вычисления (сопоставима с шифрованием)
- можно подменить
- для одного значения существует множество исходных данных
Рис. Основная задача хеш функций
Вычисляют хеш шифрованием данных блочным алгоритмом в режимах CBC, но со стандартным (известным) ключом. Хешем является последний шифрованный блок.
ГОСТ Р 34.11-94
Входное сообщение M разделяется на блоки mn,mn ? 1,mn ? 2. m1 по 256 бит. В случае если размер последнего блока mn меньше 256 бит, то к нему приписываются слева нули для достижения заданной длины блока.
Рис. Вычисление хеш по ГОСТ Р 34.11-94 (сравните с CBC)
h — значение хеш-функции сообщения M
Len(M) — длина сообщения
Ключи для f-функции генерятся стандартным образом, что бы все пользователи могли вычислить одинаковые хеш для одних и тех же файлов.
исходный текст: Контроль целостности данных
md2 (длина 128 бит)
md4 (длина 128 бит)
md5 (длина 128 бит)
sha1 (длина 160 бит)
sha224 (длина 224 бит)
sha256 (длина 256 бит)
sha384 (длина 384 бит)
sha512 (длина 512 бит)
ГОСТ Р 34.11-94 (длина 256 бит)
- контроль целостности файлов
- контроль передаваемых данных по каналам связи
- контроль целостности при считывании данных (например: c HDD)
- хеши паролей
- аутентификация (CRAM-MD5, DIGEST-MD5 и т.д.)
Имитовставка (MAC, message authentication code — код аутентичности сообщения)
Имитовставка — значение, рассчитанное по входным данным с помощью криптографического алгоритма с использованием секретного элемента (ключа), известного только отправителю и получателю.
- малый размер
- стандартный размер
- нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
- нельзя подменить без секретного элемента (ключа)
- низкая скорость вычисления (сопоставима с шифрованием)
- для одного значения существует множество исходных данных
- секретный ключ известен как минимум двоим
Вычисляют имитовставку шифрованием данных блочным алгоритмом в режимах CBC. Имитовставкой является последний шифрованный блок.
Рис. Вычисление имитовставки
Имитовставка по ГОСТ 28147-89
Длина имитовставки от 1 до 32 бит.
Открытый текст TO разбивается на блоки длиной 64 бита. Последний блок в случае необходимости дополняется нулями.
Первый блок шифруется, что и сообщение, но с применением 16 циклов вместо 32. Результат по битам по модулю 2 складывается с вторым блоком
и так же шифруется. Результат складывается с третьим блоком. и так далее.
Первые 32 бита получившегося блока составляют имитовставку. Спецификация шифра предусматривает использование в качестве имитовставки и меньшее количество бит по желанию, но не большее.
Рис. Проблема имитовставки
Получатель должен знать ключ, и этот ключ позволяет ему генерировать сообщения с тем же значением имитовставки, что и у присланного сообщения, таким образом, имитовставка на основе симметричного шифра не дает знания — отправитель или получатель сформировал эту имитовставку.
Отсюда следует, что имитовставка на основе симметричного шифра не может заменять собой электронную подпись!
- контроль целостности файлов
- контроль передаваемых данных по каналам связи
- аутентификации источника данных (не во всех случаях)
Обычные хэш-алгоритмы использовать для вычисления имитовставки нельзя (MD5 и т.д.) т.к. отсутствует секретный ключ. Поэтому создан HMAC .
HMAC (H ash-based Message Authentication Code ) — механизм включения секретного ключа в существующие хэш-алгоритмы.
Электронная цифровая подпись — зашифрованное значение вычисленного хеша по входным данным.
- малый размер
- стандартный размер
- нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
- нельзя подменить без секретного элемента (ключа)
- секретный ключ известен одному
- низкая скорость вычисления (сопоставима с шифрованием)
- для одного значения существует множество исходных данных
Рис. Создание и проверка ЭЦП
- вычисляется хеш
- шифруется хеш
- контроль целостности файлов
- контроль передаваемых данных по каналам связи
- аутентификации источника данных (кто создал подпись)
Источник
Протоколирование и аудит, шифрование, контроль целостности
Контроль целостности
Криптографические методы позволяют надежно контролировать целостность как отдельных порций данных, так и их наборов (таких как поток сообщений); определять подлинность источника данных; гарантировать невозможность отказаться от совершенных действий («неотказуемость»).
В основе криптографического контроля целостности лежат два понятия:
- хэш-функция;
- электронная цифровая подпись (ЭЦП) .
Хэш-функция – это труднообратимое преобразование данных ( односторонняя функция ), реализуемое, как правило, средствами симметричного шифрования со связыванием блоков. Результат шифрования последнего блока (зависящий от всех предыдущих) и служит результатом хэш-функции.
Пусть имеются данные, целостность которых нужно проверить, хэш-функция и ранее вычисленный результат ее применения к исходным данным (так называемый дайджест ). Обозначим хэш-функцию через h, исходные данные – через T, проверяемые данные – через T’. Контроль целостности данных сводится к проверке равенства h(T’) = h(T). Если оно выполнено, считается, что T’ = T. Совпадение дайджестов для различных данных называется коллизией. В принципе, коллизии, конечно, возможны, поскольку мощность множества дайджестов меньше, чем мощность множества хэшируемых данных, однако то, что h есть функция односторонняя, означает, что за приемлемое время специально организовать коллизию невозможно.
Рассмотрим теперь применение асимметричного шифрования для выработки и проверки электронной цифровой подписи . Пусть E(T) обозначает результат зашифрования текста T с помощью открытого ключа, а D(T) – результат расшифрования текста Т (как правило, шифрованного) с помощью секретного ключа. Чтобы асимметричный метод мог применяться для реализации ЭЦП , необходимо выполнение тождества
На рис. 11.5 показана процедура выработки электронной цифровой подписи, состоящая в шифровании преобразованием D дайджеста h(T).
Проверка ЭЦП может быть реализована так, как показано на рис. 11.6.
следует, что S’ = D(h(T’)) (для доказательства достаточно применить к обеим частям преобразование D и вычеркнуть в левой части тождественное преобразование D(E())). Таким образом, электронная цифровая подпись защищает целостность сообщения и удостоверяет личность отправителя, то есть защищает целостность источника данных и служит основой неотказуемости.
Стандарт ГОСТ Р 34.11-2012 «Информационная технология (ИТ). Криптографическая защита информации . Функция хэширования» определяет алгоритм и процедуру вычисления хэш-функции для любой последовательности двоичных символов, которые применяются в криптографических методах обработки и защиты информации, в том числе для реализации процедур обеспечения целостности, аутентичности, электронной цифровой подписи ( ЭЦП ) при передаче, обработке и хранении информации в автоматизированных системах. Межгосудартвенный ГОСТ Р 34.10-2018 «Информационная технология. Криптографическая защита информации . Процессы формирования и проверки электронной цифровой подписи» описывает алгоритмы формирования и проверки электронной цифровой подписи, реализуемой с использованием операций в группе точек эллиптической кривой, определенной над конечным простым полем.
Для контроля целостности последовательности сообщений (то есть для защиты от кражи, дублирования и переупорядочения сообщений) применяют временные штампы и нумерацию элементов последовательности, при этом штампы и номера включают в подписываемый текст.
Цифровые сертификаты
При использовании асимметричных методов шифрования (и, в частности, электронной цифровой подписи) необходимо иметь гарантию подлинности пары (имя пользователя, открытый ключ пользователя). Для решения этой задачи в спецификациях X.509 вводятся понятия цифрового сертификата и удостоверяющего центра .
Удостоверяющий центр – это компонент глобальной службы каталогов , отвечающий за управление криптографическими ключами пользователей.Открытые ключи и другая информация о пользователях хранится удостоверяющими центрами в виде цифровых сертификатов , имеющих следующую структуру:
- порядковый номер сертификата;
- идентификатор алгоритма электронной подписи;
- имя удостоверяющего центра ;
- срок годности;
- имя владельца сертификата (имя пользователя, которому принадлежит сертификат);
- открытые ключи владельца сертификата (ключей может быть несколько);
- идентификаторы алгоритмов, ассоциированных с открытыми ключами владельца сертификата;
- электронная подпись, сгенерированная с использованием секретного ключа удостоверяющего центра (подписывается результат хэширования всей информации, хранящейся в сертификате).
Цифровые сертификаты обладают следующими свойствами:
- любой пользователь, знающий открытый ключ удостоверяющего центра , может узнать открытые ключи других клиентов центра и проверить целостность сертификата;
- никто не может модифицировать информацию о пользователе без нарушения целостности сертификата.
В спецификациях X.509 не описывается конкретная процедура генерации криптографических ключей и управления ими, однако даются некоторые общие рекомендации. В частности, оговаривается, что пары ключей могут порождаться любым из следующих способов:
- ключи может генерировать сам пользователь. В таком случае секретный ключ не попадает в руки третьих лиц, однако нужно решать задачу безопасной связи с удостоверяющим центром;
- ключи генерирует доверенное лицо. В таком случае приходится решать задачи безопасной доставки секретного ключа владельцу и предоставления доверенных данных для создания сертификата;
- ключи генерируются удостоверяющим центром. В таком случае остается только задача безопасной передачи ключей владельцу.
Цифровые сертификаты в формате X.509 версии 3 стали не только формальным, но и фактическим стандартом, поддерживаемым многочисленными удостоверяющими центрами.
Источник