Хеши/крипто

AES Encrypt/Decrypt

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

AES is the standard for symmetric encryption: the same password is used to both encrypt and decrypt. This tool derives an encryption key from your password with PBKDF2 and encrypts text with AES-GCM or AES-CBC — all locally in your browser.

How to use it

Common uses

Things to keep in mind

The IV (initialization vector) must be unique for every encryption performed with the same key — reusing a key+IV pair in GCM completely breaks the encryption's security.

AES-CBC without a separate integrity check (a MAC) is vulnerable to ciphertext-tampering attacks — that's why GCM, which combines encryption and authentication in one mode, is the safer default.

Статья об этом инструменте: 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, но не приватным.