Калькулятор MAC файла KMAC128
Вычисляйте тег аутентификации KMAC128 файла с вашим секретным ключом и строкой настройки локально в браузере и сравнивайте его с ожидаемым тегом.
Кратна 8, от 8 до 16384 бит.
Необязательная метка для разделения доменов, например название приложения. Разные строки дают никак не связанные результаты.
Ключ пуст. Без секретного ключа KMAC ничего не аутентифицирует.
Файл ещё не выбран. Контрольная сумма появится сразу после выбора файла.
Файл читается частями прямо в браузере и никуда не загружается.
Что такое MAC файла KMAC128?
Инструмент вычисляет тег KMAC128 файла с секретным ключом, необязательной строкой настройки и выбранной длиной вывода и сравнивает его с ожидаемым тегом. В отличие от обычной контрольной суммы, совпавший тег показывает, что файл создан тем, кто знает ключ.
Как пользоваться MAC файла KMAC128
- Введите Секретный ключ и Кодировка ключа, а также при желании Строка настройки (S) и Длина вывода (бит); при их изменении тег пересчитывается.
- Нажмите на область загрузки или перетащите на неё файл; файл читается блоками, отображается индикатор прогресса.
- Проверьте Имя файла и Размер файла ниже, чтобы убедиться, что выбран нужный файл.
- Вставьте контрольную сумму, опубликованную поставщиком, в Ожидаемая контрольная сумма — вы получите Совпадает или Не совпадает (регистр,
0xи имя файла в конце строки игнорируются). - Выберите Формат вывода и нажмите Копировать, чтобы сохранить или отправить тег.
Пример
A file hash-abc.txt containing "abc", key "secret" (UTF-8), S empty
9723991ae89d1a16b62b38aaa31cb025d0612906eb4f2885a73efc7d43091523
Длина вывода 256 бит.
Когда использовать MAC файла KMAC128
Используйте его, чтобы проверить, что файл пришёл от стороны с вашим общим секретным ключом, или чтобы создавать теги файлов в системе на основе KMAC. Для проверки публичной загрузки подходят контрольная сумма или цифровая подпись — MAC требует, чтобы обе стороны знали ключ.
Как работает MAC файла KMAC128
Сначала поглощается дополненный ключ, затем файл срезами по 4 МБ, затем закодированная длина вывода, после чего выжимается тег. KMAC128 (NIST SP 800-185) — это cSHAKE128 с именем функции "KMAC". Он поглощает bytepad(encode_string(K), 168) — ключ, дополненный до полного блока, — затем сообщение, затем right_encode(L) с запрошенной длиной вывода L и выжимает L бит. Поскольку L входит в данные, 256-битный и 512-битный KMAC одних и тех же данных никак не связаны (в отличие от SHAKE). Губчатая конструкция делает безопасным простой префикс из ключа, поэтому KMAC не нуждается во вложенной структуре HMAC.
Распространенные Случаи Использования
- Проверить тег подлинности файла прошивки или резервной копии
- Создавать ключевые отпечатки файлов, которые посторонние не смогут воспроизвести
- Протестировать реализацию KMAC на больших данных
Примечание по Безопасности
Используйте случайный секретный ключ не короче 16 байт. Тег не защищает, если ключ утёк. Вся обработка локальная.
Часто Задаваемые Вопросы
Файл и ключ загружаются на сервер?
Нет. Оба остаются в вашем браузере; файл читается локально блоками.
Почему мой тег не совпадает?
Байты ключа (проверьте кодировку ключа), строка настройки и длина вывода должны точно совпадать, как и содержимое файла.
Тег KMAC — это подпись?
Нет. Любой, у кого есть общий ключ, может создать действительный тег, поэтому он доказывает владение ключом, а не личность конкретного подписанта.