Web Security Config

Генератор SRI хешейЗафиксируйте байты выпускаемого файла

Вставьте текст или выберите файл; адрес нужен только для готового тега.

Генератор SRI хешей

Исходное содержимое

Текст кодируется в UTF-8; файл сохраняет исходные байты.

Результат SRI

Содержимое остаётся в браузере; адрес не запрашивается.

Параметры

Один файл до 20 MiB либо текст до 1 000 000 единиц UTF-16.

Введите текст или выберите файл.

Генератор SRI хешей нужен, когда сторонний скрипт должен оставаться в той версии, которую вы проверили. Совпадение имени файла и HTTPS-соединение сами по себе не доказывают, что CDN не изменил содержимое.

Целостность подресурсов требует Base64 от исходных байтов дайджеста, а не обычную шестнадцатеричную контрольную сумму. Лучше выбирать готовый файл после сборки, а не исходный текст.

Зачем нужен Генератор SRI хешей?

Показывает связь локального файла с опубликованным значением.

Хешируйте итоговый файл

Генератор SRI хешей берёт исходные байты выбранного файла вместе с BOM и переводами строк. Указанный URL не скачивается, поэтому удалённый ответ не подменит локальный образец.

Локальный файл даёт дайджест и тег script; поле URL отдельно от сетевого соединения.

Проверьте существующий токен

Вставьте одно значение того же алгоритма и сравните с текущим содержимым. Любое изменение параметра помечает старый результат устаревшим и запрещает экспорт.

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

Что проверить перед публикацией

01

Возьмите файл после сборки

Режим файла сохраняет точные байты. Текст преобразуется в UTF-8; даже один завершающий перевод строки даст другое значение.

02

Согласуйте алгоритм

По умолчанию выбран SHA-384. Поле для сравнения принимает только один токен с тем же алгоритмом; после смены настройки расчёт нужно повторить.

03

Проверьте тег и ответ сервера

URL формирует src или href, но не загружается. Наличие crossorigin="anonymous" в теге ещё не доказывает, что CDN разрешает запрос CORS.

От точных байтов к HTML

Стандартный формат

Для атрибута integrity вычисляются sha256-, sha384- или sha512- с Base64. Обычный хеш файла для script в шестнадцатеричном виде не подходит.

Проверка прежнего значения

Один корректный токен сравнивается с выбранным содержимым. Если он не совпадает, выводится различие, а не ошибка чтения.

Скрипт или таблица стилей

Собирается тег script либо link rel="stylesheet". Адрес экранируется для HTML, рядом добавляется crossorigin="anonymous".

Защита от устаревшего вывода

Worker обрабатывает файл до 20 MiB. Отмена или правка входа отключают копирование и загрузку старого результата.

Где заканчивается эта проверка

Нет запроса к CDN
Адрес используется только при составлении тега. Инструмент не видит текущие байты удалённого ресурса, его доступность и заголовки CORS.
Один токен вместо списка
При смешанных алгоритмах браузер выбирает самый сильный. Здесь список отклоняется, чтобы не выдавать ошибочный вердикт «подошёл любой».
После обновления нужен новый хеш
Изменение библиотеки, сборки или обработки на CDN меняет байты. Для каждого выпуска вычислите новое значение по окончательному файлу.
Явные ограничения
Один файл до 20 MiB или текст до 1 000 000 единиц UTF-16. Нет загрузки URL, пакетной обработки, MD5, SHA-1, проверки подписей или вредоносного кода.

Вопросы про Генератор SRI хешей

Защитит ли SRI сайт от любого взлома?

Нет. SRI сравнивает полученный файл с указанными байтами, но не подтверждает честность исходной библиотеки, безопасность сайта или правильность самой ссылки.

Можно ли ставить SRI на все сторонние скрипты?

Не всегда. Для динамического содержимого фиксированный integrity быстро устареет. Для стабильных версий скриптов используйте отдельный окончательный файл и обновляйте значение при выпуске.

Что происходит с integrity при обновлении библиотеки?

После обновления библиотеки её байты обычно меняются, поэтому старое значение может заблокировать загрузку. Пересчитайте атрибут по новому файлу.

Как использовать Subresource Integrity для защиты загружаемых ресурсов?

Выберите итоговый JS или CSS файл, получите токен sha384-… и вставьте его в integrity. Браузер сравнит реально загруженные байты; для внешнего источника также нужен CORS.

Как создать хеш-атрибут для CDN-скрипта?

Генератор SRI хешей вычисляет Base64-значение для локального файла и собирает тег с crossorigin="anonymous". Указанный адрес не открывается: совпадение файла CDN проверьте отдельно.

Не нашли ответ о сравнении файлов?

Используйте Генератор SRI хешей для новой версии

Вернитесь в Генератор SRI хешей с окончательным файлом и проверьте значение и тег перед публикацией.