Хеши/крипто

AES Encrypt/Decrypt

Шифрование и расшифрование текста через AES-GCM или AES-CBC с паролем (ключ производный через PBKDF2).

AES — стандарт симметричного шифрования: тот же пароль используется и для шифрования, и для расшифровки. Инструмент выводит ключ шифрования из пароля через PBKDF2 и шифрует текст режимом AES-GCM или AES-CBC — всё локально в браузере.

Как пользоваться

Типичные сценарии

Что стоит помнить

IV (вектор инициализации) должен быть уникальным для каждого шифрования с тем же ключом — повторное использование пары ключ+IV в GCM полностью разрушает безопасность шифрования.

AES-CBC без отдельной проверки целостности (MAC) уязвим к атакам на модификацию шифротекста — поэтому GCM, объединяющий шифрование и аутентификацию в одном режиме, безопаснее по умолчанию.

Статья об этом инструменте: AES: как работает симметричное шифрование

Часто задаваемые вопросы

Какие размеры ключей поддерживает AES и какой выбрать?

AES поддерживает ключи 128, 192 и 256 бит. AES-256 — стандартная рекомендация для новых приложений: 128 бит уже считается безопасным, но 256 даёт запас прочности практически бесплатно.

В чём разница между режимами шифрования (например, CBC, GCM)?

GCM аутентифицирует шифротекст в процессе шифрования, поэтому также обнаруживает подделку — это рекомендуемый вариант по умолчанию. CBC только шифрует и требует отдельного MAC для целостности, а также случайного IV при каждом шифровании.

Отправляется ли мой ключ или открытый текст куда-либо?

Нет. Всё шифрование и расшифровка выполняются локально в вашем браузере через Web Crypto API — ничего не отправляется на сервер.

Почему не стоит использовать режим ECB?

ECB шифрует каждый блок независимо и одинаково, поэтому одинаковые блоки открытого текста дают одинаковые блоки шифротекста — это выдаёт структуру данных (например, повторяющиеся паттерны в изображении остаются видимыми даже в зашифрованном виде). CBC или GCM с уникальным IV устраняют эту проблему.

Что произойдёт, если повторно использовать тот же IV с тем же ключом?

Для GCM это критическая ошибка — повторное использование пары ключ+IV полностью компрометирует конфиденциальность и подлинность шифрования. IV всегда должен быть уникальным для каждого шифрования с тем же ключом.

Статьи: Хеши/крипто

Hash Generator: чем MD5, SHA-1 и SHA-256 отличаются друг от друга

Почему MD5 до сих пор используют для проверки целостности файлов, но не для паролей.

Checksum Verifier: как проверить, что файл не повреждён

Почему совпадение контрольной суммы подтверждает целостность файла, но не то, кто его создал.

HMAC: чем хеш с ключом отличается от обычного хеша

Почему обычный SHA-256 не защищает от подделки сообщения, а HMAC — защищает.

Bcrypt: почему пароли хешируют медленно, а не быстро

Почему быстрый SHA-256 — плохая идея для паролей, а медленный bcrypt — правильная.

UUID: как генерируют идентификаторы, которые почти никогда не повторяются

Почему UUID v4 можно генерировать независимо на миллионах машин без риска коллизий.

Генератор паролей: что на самом деле делает пароль устойчивым

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

Argon2: почему этот алгоритм победил в конкурсе на хеширование паролей

Чем Argon2 лучше защищает от атак на видеокартах, чем более старые алгоритмы хеширования паролей.

Scrypt: зачем алгоритму нужно много памяти

Почему scrypt намеренно требует много памяти, чтобы усложнить перебор на ASIC-устройствах.

TOTP: как работают одноразовые коды в приложениях-аутентификаторах

Почему код в Google Authenticator работает без интернета и синхронизируется с сервером только по времени.

PBKDF2: самый старый стандарт растяжения ключей

Почему рекомендуемое количество итераций PBKDF2 растёт с каждым годом.

X.509: что внутри SSL-сертификата

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

PGP: как работает шифрование с открытым и приватным ключом

Почему можно свободно делиться публичным ключом PGP, но не приватным.