код аутентификации сообщения обеспечивает
Код аутентичности сообщения
MAC обычно применяется для обеспечения целостности и защиты от фальсификации передаваемой информации.
Для проверки целостности (но не аутентичности) сообщения на отправляющей стороне к сообщению добавляется значение хеш-функции от этого сообщения, на приемной стороне также вырабатывается хеш от полученного сообщения. Выработанный на приёмной стороне и полученный хеш сравниваются, если они равны то считается, что полученное сообщение дошло без изменений.
Для защиты от фальсификации (имитации) сообщения применяется имитовставка, выработанная с использованием секретного элемента (ключа), известного только отправителю и получателю.
Содержание
Обзор
Простым способом преобразовать однонаправленную хэш-функцию в имитовставку (MAC) является шифрование хэш-значения симметричным алгоритмом. Такой MAC может быть преобразован в однонаправленную хэш-функцию с помощью раскрытия ключа.
Другим способом является выработка имитовставки (MAC) с помощью специализированного алгоритма имитозащиты на основе симметричного алгоритма шифрования.
Имитовставка по ГОСТ 28147-89
Имитовставка по ГОСТ 28147-89 — это контрольный вектор, используемый для проверки аутентификации и целостности (имитозащиты). Имитовставка вырабатывается 16-цикловым алгоритмом ГОСТа (ГОСТ 28147-89). Вектор имитовставки — это 32 младших бита последнего блока Bn шифртекста, вырабатываемого в этом режиме. Вырабатываемые блоки связаны следующими соотношениями: B1 = Ek(T1),Bi = Ek(Bi − 1 + Ti),i = 2,3. где Ек — подстановка, реализуемая 16-цикловым алгоритмом ГОСТа на ключе к, Ti — i бит открытого текста, Bi — i бит шифртекста.
Методы Джунемана
СОДЕРЖАНИЕ
Терминология
Определения
Неформально система кодов аутентификации сообщений состоит из трех алгоритмов:
S и V должны удовлетворять следующим условиям:
MAC невозможно подделать, если для каждого эффективного противника A
Безопасность
Реализация
Кроме того, алгоритм MAC может намеренно комбинировать два или более криптографических примитива, чтобы поддерживать защиту, даже если один из них позже окажется уязвимым. Например, в протоколе безопасности транспортного уровня (TLS) входные данные разделяются пополам, каждая из которых обрабатывается с помощью разных примитивов хеширования ( SHA-1 и SHA-2 ), а затем объединяется методом XOR для вывода MAC.
Одноразовый MAC
Универсальное хеширование и, в частности, попарно независимые хеш-функции обеспечивают безопасный код аутентификации сообщения, если ключ используется не более одного раза. Это можно рассматривать как одноразовый блокнот для аутентификации.
В более общем смысле, независимые от k хеш- функции обеспечивают безопасный код аутентификации сообщения до тех пор, пока ключ используется менее k раз для независимых от k хэш-функций.
Коды аутентификации сообщений и аутентификация источника данных также обсуждались в рамках квантовой криптографии. В отличие от других криптографических задач, таких как распределение ключей, для довольно широкого класса квантовых MAC-адресов было показано, что квантовые ресурсы не дают никаких преимуществ перед безусловно безопасными одноразовыми классическими MAC.
Стандарты
Существуют различные стандарты, определяющие алгоритмы MAC. Это включает:
Пример использования MAC
В этом примере отправитель сообщения запускает его через алгоритм MAC для создания тега данных MAC. Затем сообщение и MAC-тег отправляются получателю. Получатель, в свою очередь, запускает часть сообщения передачи через тот же алгоритм MAC, используя тот же ключ, создавая второй тег данных MAC. Затем приемник сравнивает первый MAC-тег, полученный при передаче, со вторым сгенерированным MAC-тегом. Если они идентичны, получатель может с уверенностью предположить, что сообщение не было изменено или подделано во время передачи ( целостность данных ).
Код аутентификации сообщения (MAC)
Что такое код аутентификации сообщения?
Код аутентификации сообщения (MAC) или тег – это код безопасности, который вводится пользователем компьютера для доступа к учетным записям или порталам. Этот код прикрепляется к сообщению или запросу, отправляемому пользователем. Коды аутентификации сообщения (MAC), прикрепленные к сообщению, должны распознаваться принимающей системой, чтобы предоставить пользователю доступ.
Понимание кода аутентификации сообщения (MAC)
Коды аутентификации сообщений (MAC) обычно используются при электронных переводах денежных средств (EFT) для поддержания целостности информации. Они подтверждают подлинность сообщения; Другими словами, оно действительно пришло от указанного отправителя и не претерпело никаких изменений в пути. Верификатор, который также владеет ключом, может использовать его для идентификации изменений в содержании рассматриваемого сообщения.
Коды аутентификации сообщений обычно требуются для доступа к любому финансовому счету. Эти коды могут использоваться банками, брокерскими фирмами, трастовыми компаниями и любой другой депозитной, инвестиционной или страховой компанией, предлагающей онлайн-доступ. Они являются жизненно важным компонентом финансовой криптографии.
Алгоритмы, используемые для генерации MAC-адресов
MAC обычно состоит из трех алгоритмов: алгоритм генерации ключа, алгоритм подписи и алгоритм проверки. Алгоритм генерации ключей выбирает ключ случайным образом. Алгоритм подписи отправляет тег при получении ключа и сообщения. Алгоритм проверки используется для проверки подлинности сообщения при получении ключа и тега; он вернет сообщение о принятии, если сообщение и тег являются подлинными и неизменными, но в противном случае он вернет сообщение об отклонении.
Например, отправитель отправляет сообщение, такое как EFT, через алгоритм MAC, который генерирует ключ и прикрепляет тег данных MAC к сообщению. Получатель получает сообщение, запускает его обратно через алгоритм MAC с тем же ключом и получает второй тег данных. Затем они сравнят этот тег данных MAC с первым тегом, прикрепленным к сообщению при его передаче. Если код одинаков на обоих концах, получатель может с уверенностью предположить, что целостность данных сообщения не нарушена. В противном случае это означает, что сообщение было изменено, подделано или подделано.
Однако само сообщение должно содержать некоторые данные, которые гарантируют, что это сообщение может быть отправлено только один раз. Например, можно использовать одноразовый MAC, временную метку или порядковый номер, чтобы гарантировать, что сообщение может быть отправлено только один раз. В противном случае система может быть уязвима для повторной атаки, при которой злоумышленник перехватывает сообщение после того, как оно было декодировано, и повторно передает его позже, реплицируя исходные результаты и проникая в систему.
Коды целостности сообщений (MIC)
Иногда вместо MAC используется термин «код целостности сообщения» (MIC). Чаще всего это делается в индустрии связи, где MAC традиционно означает адрес управления доступом к среде (MAC-адрес). Однако MIC также может использоваться для ссылки на дайджест сообщения, который не использует секретные ключи таким же образом, как MAC, и не может предложить такой же уровень безопасности без дальнейшего шифрования.
Как работает код аутентификации сообщения?
Обязательное условие — коды аутентификации сообщения
Помимо вторжения, передача сообщения между двумя людьми также сталкивается с другими внешними проблемами, такими как шум, который может изменить исходное сообщение, созданное отправителем. Чтобы гарантировать, что сообщение не изменено, есть этот классный метод MAC.
MAC означает код аутентификации сообщения. Здесь, в MAC, отправитель и получатель совместно используют один и тот же ключ, где отправитель генерирует вывод фиксированного размера, называемый криптографической контрольной суммой или кодом аутентификации сообщения, и добавляет его к исходному сообщению. На стороне получателя получатель также генерирует код и сравнивает его с тем, что он / она получил, тем самым обеспечивая оригинальность сообщения. Это компоненты:
Существуют различные типы моделей кода аутентификации сообщений (MAC), как показано ниже:
Проблемы в MAC —
Если мы сделаем реверс-инжиниринг, мы сможем получить простой текст или даже ключ. Здесь мы сопоставили входные данные с выходными, чтобы преодолеть это, мы переходим к хеш-функциям, которые являются «односторонними».
Примечание — символ «Е» обозначает симметричный ключ шифрования.
Message authentication code
Message authentication code
MAC (имитовставка, англ. message authentication code — код аутентичности сообщения) — средство обеспечения имитозащиты в протоколах аутентификации сообщений с доверяющими друг другу участниками — специальный набор символов, который добавляется к сообщению и предназначен для обеспечения его целостности и аутентификации источника данных.
MAC обычно применяется для обеспечения целостности и защиты от фальсификации передаваемой информации.
Для проверки целостности (но не аутентичности) сообщения на отправляющей стороне к сообщению добавляется значение хеш-функции от этого сообщения, на приемной стороне также вырабатывается хеш от полученного сообщения. Выработанный на приёмной стороне и полученный хеш сравниваются, если они равны то считается, что полученное сообщение дошло без изменений.
Для защиты от фальсификации (имитации) сообщения применяется имитовставка, выработанная с использованием секретного элемента (ключа), известного только отправителю и получателю.
Содержание
Обзор
Простым способом преобразовать однонаправленную хэш-функцию в имитовставку (MAC) является шифрование хэш-значения симметричным алгоритмом. Такой MAC может быть преобразован в однонаправленную хэш-функцию с помощью раскрытия ключа.
Другим способом является выработка имитовставки (MAC) с помощью специализированного алгоритма имитозащиты на основе симметричного алгоритма шифрования.
CBC-MAC: Простейшим способом создать зависящую от ключа имитовставку — шифрование сообщения блочным алгоритмом в режимах CBC или CFB. Имитовставкой является последний шифрованный блок, зашифрованный в этих режимах. Потенциальная проблема, связанная с безопасностью этого метода, состоит в том, что получатель должен знать ключ, и этот ключ позволяет ему генерировать сообщения с тем же значением имитовставки, что и у присланного сообщения, таким образом, имитовставка на основе симметричного шифра не дает знания — отправитель или получатель сформировал эту имитовставку. Таким образом, имитовставка на основе симметричного шифра не заменяет собой электронную подпись.
Имитовставка по ГОСТ 28147-89
Имитовставка по ГОСТ 28147-89 — это контрольный вектор, используемый для проверки аутентификации и целостности (имитозащиты). Имитовставка вырабатывается 16-цикловым алгоритмом ГОСТа (ГОСТ 28147-89). Вектор имитовставки — это 32 младших бита последнего блока Bn шифртекста, вырабатываемого в этом режиме. Вырабатываемые блоки связаны следующими соотношениями: B1 = Ek(T1),Bi = Ek(Bi − 1 + Ti),i = 2,3. где Ек — подстановка, реализуемая 16-цикловым алгоритмом ГОСТа на ключе к, Ti — i бит открытого текста, Bi — i бит шифртекста.
MAA (Message Authenticator Algorithm) — Алгоритм проверки подлинности сообщений.
Этот алгоритм является стандартом ISO. Он выдает 32-битовое хэш-значение и был спроектирован для мэйнфреймов с быстрыми инструкциями умножения.
v=v Методы Джунемана
Сначала разделим сообщение на m-битовые блоки. Затем:
Другие методы
CBC-MAC
В качестве MAC берётся последний блок сообщения зашифрованного блочным алгоритмом в режимах CBC или СFB. Недостатки. Получатель должен знать ключ, что позволит ему генерировать сообщение с тем же MAC.
RIPE-MAC
Был придуман Бартом Пренелом в рамках проекта RIPE. Использует DES в качестве функции блочного шифрования. Существует две модификации данного алгоритма:
RIPE-MAC 1 — использует одно шифрование DES на каждый 64-битный блок сообщения.
RIPE-MAC 3 — использует тройное шифрование DES на каждый 64-битный блок сообщения.
1.Длина сообщения увеличивается, так что бы она была кратна 64.
2.Сообщение разбивается на 64-битные блоки.
3.К сообщению применяется хэш-функция зависящая от ключа(DES или тройной DES).
4.Значени хеш-функции получение на 3 шаге ещё раз шифруется DES, с ключом полученным из ключа, который использовался на 3 шаге.
IBC-MAC
Так же использовалась в рамках проекта RIPE. Вероятность вскрытия IBC-MAC может быть оценена количественно. Ядром функции является
Hi = ((Mi mod p) + v) mod 2n
Секретный ключ представляет собой пару чисел p и v
p — n-битное простое число.
v — случайное число меньше 2n.
Mi — получается с помощью процедуры дополнения.
Каждое сообщение должно хэшироваться новым ключом.
Вероятность вскрытия, однонаправленность и устойчивость к столкновениям могут оцениваться количественно, изменяя их можно задавать нужный уровень безопасности.
Минус в том, что выбранный уровень безопасности ограничивает размер хэшируемого сообщения.
Двунаправленный MAC
Этот MAC выдает хэш-значение, которое в два раза длиннее блока алгоритма. Сначала для сообщения вычисляется CBC- MAC. Затем вычисляется CBC- MAC сообщения с обратным порядком блоков. Двунаправленный MAC просто является объединением этих двух значений. К сожалению эта схема не безопасна.
Однонаправленная хэш-функция MAC
В качестве MAC может быть использована и однонаправленная хэш-функция.
Например, пусть пользователи А и В используют общий ключ К, и А хочет отправить В MAC сообщение М. А объединяет К и М, и вычисляет однонаправленную хэш-функцию объединения: Н(К,М). Это хэш-значение и является кодом MAC. Так как В знает К, он может воспроизвести результат А, а третий пользователь С, которому ключ неизвестен, не сможет это сделать.
С методами MD-усиления этот способ работает, но есть серьезные проблемы. Пользователь С всегда может добавить новые блоки к концу сообщения и вычислить правильный MAC. Это вскрытие может быть предотвращено, если к началу сообщения добавить его длину, но это тоже не безопасно. Лучше добавлять ключ к концу сообщения, Н(М,К), но при этом также возникают проблемы. Если Н однонаправленная функция, которая не защищена от столкновений, С может подделывать сообщения. Еще лучше Н(К,М,К) или Н(К1,М,К2), где К1 и К2 различны. Безопасными кажутся следующие конструкции:
Н(К, р, М, К)), где р дополняет К до полного блока сообщения.
Лучшим подходом является объединение с каждым блоком сообщения по крайней мере 64 битов ключа. Это делает однонаправленную функцию менее эффективной, так как уменьшаются блоки сообщения, но так она становится намного безопаснее.
Или можно использовать однонаправленную хэш-функцию и симметричный алгоритм. Сначала хэшируем файл, потом зашифровываем хэш-значение. Это безопаснее, чем сначала шифровать файл, а затем хэшировать зашифрованный файл, но эта схема чувствительна к тому же вскрытию, что и конструкция Н(М,К).
MAC с использованием потокового шифра
Эта схема MAC использует потоковые шифры. Криптографически безопасный генератор псевдослучайных битов демультиплексирует поток сообщения на два подпотока. Если на выходе генератора битов ki единиц, то текущий бит сообщения mi отправляется в первый подпоток, если ноль, то mi отправляется во второй подпоток. Каждый подпоток отправляется на свой LFSR. Выходом MAC просто является конечное состояние обоих регистров.
К несчастью этот метод небезопасен по отношению к небольшим изменениям в сообщении. Например, если изменить последний бит сообщения, то для создания поддельного MAC нужно будет изменить только 2 бита соответствующего MAC; это может быть выполнено с заметной вероятностью.