Что делает инструмент
AES (Advanced Encryption Standard) — симметричный шифр, который используется почти везде: HTTPS, шифрование дисков, менеджеры паролей и мессенджеры. Один и тот же секретный ключ шифрует и расшифровывает. Инструмент превращает текст в Base64, который можно вставить куда угодно, и расшифровывает его обратно.
Можно использовать:
- парольную фразу, которая превращается в 128- или 256-битный ключ через PBKDF2-HMAC-SHA256 со случайной солью, или
- hex-ключ: 32 или 64 шестнадцатеричные цифры (128 или 256 бит), используемые напрямую. Кнопка Случайный ключ создаст новый.
Доступны два режима. AES-GCM — современный вариант по умолчанию, обнаруживающий подмену. AES-CBC с дополнением PKCS#7 — для совместимости со старыми системами.
Как пользоваться
- Выберите Зашифровать или Расшифровать, алгоритм и тип ключа.
- Введите парольную фразу или вставьте hex-ключ в верхней части поля ввода.
- Вставьте текст (или Base64 для расшифровки). Результат появится справа; Сделать вводом меняет направление, чтобы проверить обратное преобразование.
Формат вывода
Вывод — одна строка Base64, чтобы она не портилась в почте и мессенджерах:
passphrase: salt (16 bytes) | IV (12 GCM / 16 CBC) | ciphertext (+ 16-byte tag for GCM)
hex key: IV (12 GCM / 16 CBC) | ciphertext (+ 16-byte tag for GCM)
Для расшифровки нужны те же алгоритм, тип ключа, длина ключа и число итераций, что и при шифровании. Эти настройки хранятся в адресе страницы, поэтому ссылка передаёт их, а ключ остаётся у вас.
Как выбрать парольную фразу
PBKDF2 замедляет каждую попытку, но не спасёт короткую или распространённую фразу. Используйте длинную случайную фразу, например из генератора паролей, и передавайте её по другому каналу, чем шифротекст. Больше итераций усложняет подбор и немного замедляет расшифровку; обычно берут от 100 000 до 600 000.
Частые вопросы
› Что выбрать: GCM или CBC?
Выбирайте GCM, если другая система не требует CBC. GCM аутентифицирован: неверный ключ или один изменённый байт будут обнаружены, а не превратятся в мусор. CBC обеспечивает только конфиденциальность и нужен в основном для совместимости со старым кодом.
› Почему шифротекст каждый раз разный?
Каждое шифрование использует новый случайный IV, а с парольной фразой — ещё и новую случайную соль. Оба хранятся в начале вывода, поэтому расшифровка работает. Повторное использование IV с тем же ключом, особенно в GCM, было бы серьёзной уязвимостью.
› Как расшифровать вывод в своём коде?
Декодируйте Base64. С парольной фразой первые 16 байт — соль PBKDF2, затем IV (12 байт для GCM, 16 для CBC), затем шифротекст. Выведите ключ через PBKDF2-HMAC-SHA256 с тем же числом итераций. С hex-ключом соли нет. В GCM последние 16 байт — тег аутентификации.
› Сохраняется ли парольная фраза или ключ и отправляется ли куда-то?
Нет. Шифрование выполняется в браузере через Web Crypto API. Парольная фраза или ключ хранятся только в памяти этой страницы: они не сохраняются, не попадают в адресную строку и не включаются в ссылки для отправки, поэтому можно поделиться зашифрованным сообщением без ключа.