Перейти к основному содержанию

Шифрование/дешифрование AES

Шифруйте или расшифровывайте текст с помощью AES-256-CBC. Полностью работает на стороне клиента — укажите 64-значный hex-ключ, а инструмент сам позаботится о padding, IV и кодировании base64.

Ввод

Exactly 64 hexadecimal characters (32 bytes), used directly as the AES-256 key — e.g. generate one with any password manager's "hex" export, or run `openssl rand -hex 32`. The IV is derived from this key automatically, so encrypting different messages with the same key reuses the same IV; use a fresh key per sensitive message for stronger guarantees.

Вывод

Результат
Это было полезно?

Руководства

AES (Advanced Encryption Standard) — симметричный шифр, который используется практически везде: HTTPS, шифрование дисков, менеджеры паролей, VPN. Он быстрый, хорошо изученный и, при правильном использовании, не взломанный. Этот инструмент шифрует или расшифровывает произвольный текст с помощью AES-256 в режиме CBC, полностью в вашем браузере.

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

  1. Вставьте текст, который хотите зашифровать (или, в режиме Расшифровки, base64-шифротекст для расшифровки) в поле Исходный текст.
  2. Введите Секретный ключ: ровно 64 шестнадцатеричных символа (32 байта), используемых напрямую как ключ AES-256. Сгенерируйте его с помощью openssl rand -hex 32 в командной строке или любого инструмента, который выдает 32 случайных байта в hex.
  3. Выберите Шифрование или Расшифровка.
  4. Результат появится в поле Результат — скопируйте или скачайте его.

Чтобы расшифровать то, что вы зашифровали здесь, переключитесь в режим Расшифровки, вставьте base64-вывод обратно в Исходный текст и используйте тот же ключ.

Формат ключа и IV

  • Ключ: 64 hex-символа = 32 байта = 256-битный ключ AES. Всё, что короче, длиннее или не в hex, отклоняется до обработки.
  • IV (вектор инициализации): режиму CBC нужен IV длиной 16 байт для каждого шифрования. Вместо того чтобы просить вас управлять им отдельно, этот инструмент детерминированно выводит его из вашего ключа (шифруя фиксированный постоянный блок этим ключом) и добавляет в начало шифротекста, так что для расшифровки нужен только ключ. Обратная сторона: шифрование двух разных сообщений одним и тем же ключом дает одинаковый IV, что может выдать, имеют ли два шифротекста общий префикс открытого текста. Для максимальной безопасности используйте отдельный ключ для каждого чувствительного сообщения или относитесь к этому инструменту как к универсальному средству перемешивания текста, а не как к замене проверенной криптографической библиотеки в критичном для безопасности приложении.
  • Формат вывода: base64 — IV на 16 байт, за которым следует шифротекст с padding PKCS7 до кратности 16 байт.

Частые вопросы

Это «настоящий» AES? Да — это реализация алгоритма FIPS-197 с нуля (S-box, расписание ключей, MixColumns, всё как надо), а не упрощенная замена. В ходе разработки она была сверена со встроенным модулем crypto Node.js на случайных сквозных прогонах AES-128/192/256 CBC для подтверждения побитовой корректности.

Почему нельзя ввести пароль вместо hex-ключа? Превращение пароля в ключ (KDF вроде PBKDF2) требует множества итераций для защиты от перебора, что медленно — а этот инструмент работает синхронно, поэтому одинаково работает и в браузере, и через API. Указание готового ключа обходит этот компромисс. Если вам нужно шифрование на основе пароля, сначала получите ключ из пароля с помощью специализированной KDF, а затем вставьте полученный hex сюда.

Что будет, если использовать неправильный ключ для расшифровки? Вы получите понятную ошибку («invalid padding» или «not valid UTF-8») вместо бессмысленного текста или сбоя — инструмент всегда сообщает, что что-то пошло не так, а не молча возвращает ерунду.

Отправляется ли мой ключ или текст куда-либо? Нет — всё работает на стороне клиента в вашем браузере; ничего не передается и не сохраняется. Если вы вызываете этот инструмент через API, ваш ключ и текст обрабатываются только для этого одного запроса и не логируются и не сохраняются на сервере.

aesencryptiondecryptionciphercryptographycbc

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/aes-encryption-decryption \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inputText": "Hello, World!",
    "key": "000102030405060708090a0b0c0d0e0f1011121314151617…",
    "mode": "encrypt"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `aes-encryption-decryption` tool (AES Encryption/Decryption) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Часть рабочего процесса

Все подборки

Нравятся инструменты? Уберите рекламу.

Один платёж навсегда убирает всю рекламу с вашего аккаунта. Без подписки, без слежки.