Инструменты InterLAB · Файлы потоком · HMAC · UUID v7

Base64, хеши, UUID и ULID

Кодируйте и декодируйте текст и файлы, считайте хеши и HMAC, сверяйте контрольные суммы, генерируйте и разбирайте UUID v4/v7, ULID и NanoID — всё прямо в браузере, ничего из введённого не уходит в сеть.

Бесплатно, без регистрации

RFC 4648 · FIPS 180-4 · RFC 9562

Всё считается в этом браузере: текст, файлы и ключи никуда не отправляются. Сохраняются только настройки.

Кодировка
RFC 4648 §4–5
19 симв. · 28 байт UTF-8
40 симв.

Правьте любую сторону — другая пересчитывается сразу.

Как это работает

  1. Кодирование

    Две стороны редактируются живьём: правите текст — пересчитывается Base64 (или другая кодировка), вставляете Base64 — появляется текст. Текст переводится в байты по UTF-8, счётчик показывает и символы, и байты. Ошибка декодирования показывает позицию сломанного символа.

  2. Файлы

    Файл читается в этой вкладке и превращается в Base64 и data URI (до 50,0 МБ). Обратно: вставьте Base64 или data:-ссылку — тип определится по первым байтам (сигнатуре), картинку можно посмотреть, любой файл — скачать с правильным расширением.

  3. Хеши

    Текст хешируется сразу по мере ввода. Файлы читаются кусками по 4 МБ в фоновом потоке (Web Worker) — страница не подвисает, есть прогресс и кнопка остановки. Все выбранные алгоритмы считаются за один проход по файлу.

  4. Сверка и HMAC

    Вставьте хеш с сайта загрузки — инструмент сравнит его со всеми посчитанными значениями и подсветит совпадение. HMAC считается с вашим ключом (текст, HEX или Base64) по SHA-256/384/512.

  5. Идентификаторы

    UUID v7 и ULID несут время создания и сортируются по нему, UUID v4 полностью случайный, NanoID — короткий ID со своим алфавитом. Разбор показывает версию, вариант и время в вашем часовом поясе.

Стандарты

Base64

Стандарт
RFC 4648 §4–5
Как работает
3 байта → 4 символа; base64url для адресов и JWT; перенос 64 (PEM) или 76 (MIME)

Base32

Стандарт
RFC 4648 §6
Как работает
5 байт → 8 символов A–Z 2–7; секреты TOTP (Google Authenticator), регистр не важен

HEX

Стандарт
RFC 4648 §8
Как работает
байт → 2 цифры; разделители пробел и двоеточие (MAC, отпечатки)

URL

Стандарт
RFC 3986
Как работает
процент-кодирование UTF-8; компонент, весь адрес или форма (пробел → +)

HTML

Стандарт
WHATWG HTML
Как работает
& < > " ' и по желанию всё не-ASCII; декодер знает именованные и числовые ссылки

\uXXXX

Стандарт
ECMA-262 / JSON
Как работает
\uXXXX (UTF-16, как в JSON) или \u{…} по кодовым точкам; декодер понимает \x, \n, \t

Quoted-Printable

Стандарт
RFC 2045 §6.7
Как работает
почтовые заголовки и тела писем: =XX для не-ASCII, мягкий перенос на 76 символах
Кодировки

MD5

Бит
128
Стандарт
RFC 1321
Статус
взломан: коллизии за секунды, только для сверки со старыми контрольными суммами

SHA-1

Бит
160
Стандарт
FIPS 180-4
Статус
устарел: практическая коллизия (SHAttered, 2017), не для подписей

SHA-224

Бит
224
Стандарт
FIPS 180-4
Статус
надёжен

SHA-256

Бит
256
Стандарт
FIPS 180-4
Статус
надёжен

SHA-384

Бит
384
Стандарт
FIPS 180-4
Статус
надёжен

SHA-512

Бит
512
Стандарт
FIPS 180-4
Статус
надёжен

SHA3-256

Бит
256
Стандарт
FIPS 202
Статус
надёжен

SHA3-512

Бит
512
Стандарт
FIPS 202
Статус
надёжен

BLAKE2b-512

Бит
512
Стандарт
RFC 7693
Статус
надёжен

BLAKE3-256

Бит
256
Стандарт
BLAKE3 spec
Статус
надёжен

CRC-32

Бит
32
Стандарт
ISO 3309 / ITU-T V.42
Статус
не криптография: ловит случайные ошибки, подделывается тривиально
Алгоритмы хеширования
  • Base64, base64url, Base32 и Base16 — RFC 4648 (разделы 4, 5, 6, 8); проверены на векторах из раздела 10. Перенос строк MIME (76 символов) — RFC 2045 §6.8, Quoted-Printable — RFC 2045 §6.7, data: URI — RFC 2397, URL — RFC 3986.
  • SHA-1 и SHA-2 — FIPS 180-4, SHA-3 — FIPS 202, BLAKE2b — RFC 7693, MD5 — RFC 1321, CRC-32 — полином IEEE 802.3 (как в ZIP, PNG и gzip). Реализации — открытая аудированная библиотека @noble/hashes на чистом JavaScript.
  • HMAC — RFC 2104, проверен на тестовых векторах RFC 4231 (включая ключ длиннее блока).
  • UUID — RFC 9562 (заменил RFC 4122): v4 — 122 случайных бита; v7 — 48 бит Unix-времени в миллисекундах + 74 случайных бита, монотонность внутри миллисекунды — метод 2 из §6.2. Разбор понимает v1 и v6 (время с 1582 года), Nil и Max UUID.
  • ULID — спецификация github.com/ulid/spec: 48 бит времени + 80 бит случайности, Crockford Base32 (без I, L, O, U), монотонный режим увеличивает случайную часть на 1 внутри одной миллисекунды.
  • NanoID — без смещения распределения: лишние значения байта отбрасываются по маске, а не берутся «по модулю».

Поддержка браузеров

  • Работает в актуальных Chrome, Edge, Firefox и Safari (настольных и мобильных). Нужны TextEncoder, crypto.getRandomValues и Web Workers — они есть во всех браузерах последних лет.
  • Если фоновый поток не запускается (например, политика безопасности браузера), хеши файлов считаются в основном потоке с паузами между кусками — медленнее, но страница отвечает. Инструмент сам скажет, какой режим включён.
  • WebAssembly не используется: политика безопасности сайта его не разрешает, а чистый JavaScript даёт предсказуемый результат во всех браузерах.

Ограничения

  • Файл → Base64 — до 50,0 МБ: строка Base64 на треть больше файла и целиком лежит в памяти. В поле показывается начало длинной строки, копирование и скачивание отдают её полностью.
  • Хеш файла ограничен только временем: файл не загружается в память целиком. На телефоне гигабайтный файл может считаться минуту.
  • MD5 и SHA-1 оставлены для сверки со старыми контрольными суммами. Для новых задач берите SHA-256, SHA-3 или BLAKE3.
  • Пароли так не хранят: для паролей нужны медленные функции (Argon2id, scrypt, bcrypt) с солью — быстрый хеш вроде SHA-256 перебирается миллиардами вариантов в секунду.
  • HTML-декодер знает около 150 самых частых именованных сущностей и все числовые; редкие имена остаются как есть с пометкой.
  • Тип файла по сигнатуре — эвристика: DOCX, XLSX и APK внутри — ZIP-архивы и определяются как ZIP.

Приватность

  • Всё считается на вашем устройстве: текст, файлы, хеши и ключи не отправляются на сервер и не попадают в адрес страницы.
  • В localStorage этого браузера сохраняются только настройки (кодировка, параметры, выбранные алгоритмы, параметры ID). Введённый текст, файлы и ключ HMAC не сохраняются: после перезагрузки их нет.
  • Случайность для UUID, ULID и NanoID — криптографический генератор браузера (crypto.getRandomValues), не Math.random.
  • В аналитику уходит только факт действия и категория (например, «кодировка Base64», «хеш файла») — без содержимого.
  • Результат уходит к нам, только если вы сами оставите заявку и не снимете галочку «Приложить результат» — что именно уйдёт, видно в форме. Ключи, пароли и токены в сводку не попадают: в ней только список операций (кодировки, алгоритмы хешей и HMAC, типы ID) и счётчики — без текста, результатов, хешей, ключа HMAC, самих ID и имён файлов.

Похожие инструменты

Все инструменты · 40
Сжатие картинок в WebP и AVIFПеретащите картинки — WebP, AVIF или JPEG по качеству или целевому размеру в КБ, шторка «до/после» 1:1, srcset и <picture>, пакетный ZIP. Всё в браузере.Генератор favicon и иконокИз картинки, SVG или буквы → favicon.ico, favicon.svg с тёмной темой, PNG всех размеров, apple-touch-icon, maskable, manifest и HTML; превью вкладки, iOS и Android — одним архивом.Предпросмотр ссылок (Open Graph)Вставьте HTML или заполните поля — и посмотрите, как ссылка выглядит в Telegram, WhatsApp, VK, Facebook, X, LinkedIn и Slack. Проверка og:image, длины текста и twitter:card, готовый блок <head>.Конвертер JSON, YAML и CSVПеревод между JSON, YAML и CSV с форматированием, сортировкой ключей, проверкой синтаксиса с точным местом ошибки и деревом данных.Тестер регулярных выраженийПодсветка совпадений и групп по мере ввода, замена, разбор выражения по частям, библиотека готовых шаблонов и защита от зависания.Cron: расписание по-человеческиCron-выражение ↔ понятный текст, ближайшие запуски в вашем часовом поясе, конструктор расписания и варианты для Linux, Quartz, GitHub Actions и Kubernetes.
Расскажите о задаче — мы изучим запрос и свяжемся с вами

Нужна разработка с аккуратной криптографией и API?

InterLAB делает веб-сервисы и интеграции: подписи запросов, вебхуки с HMAC, идентификаторы для БД, безопасное хранение файлов. Первый разговор о задаче — бесплатно.

  • Первый короткий разговор бесплатный — выбираем формат работы
  • NDA — по вашему или нашему шаблону
  • Стоимость — после брифа и согласования объёма

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

Нажимая кнопку, вы соглашаетесь с обработкой персональных данных.