Руководство

Как зашифровать текст с помощью AES-256-GCM и пароля

Введите текст и пароль, выберите шифрование, а затем сохраните выданный токен. Для расшифрования вставьте этот токен и используйте тот же пароль.

Инструмент Шифрование и расшифровка текста AES

Что делает инструмент и когда он подходит

AES Cipher помогает преобразовать текст в зашифрованный токен, а затем восстановить исходную строку по этому токену и тому же паролю. Инструмент принимает три элемента: текст, пароль и действие, то есть шифрование или расшифрование. Такой порядок подходит, когда нужно обработать текстовый фрагмент, сохранить полученный результат отдельно и позднее проверить обратное преобразование.

Для шифрования используется AES-256-GCM. Ключ для него выводится из пароля с помощью PBKDF2-HMAC-SHA256: применяется 32-байтовый ключ, случайная соль длиной 16 байт и 600 000 итераций. Пароль не следует хранить рядом с зашифрованным токеном: для расшифрования его нужно будет ввести снова.

Важно учитывать особое поведение пустого ввода. Если поле текста не содержит символов, инструмент возвращает успешный пустой результат до проверки пароля. Поэтому требование пароля относится к непустому тексту, а не к каждой операции без исключения.

Как зашифровать и расшифровать текст

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

  2. Введите пароль в предназначенное для него поле. Для непустого текста пароль нужен и при шифровании, и при расшифровании. Выбирайте его так, чтобы позднее можно было ввести тот же вариант без изменений: расшифрование зависит от совпадения пароля.

  3. Выберите действие «Шифрование». Названия элементов интерфейса могут отличаться, поэтому ориентируйтесь на смысл выбора, а не на конкретную подпись. Запустите обработку и дождитесь результата.

  4. Скопируйте выданный зашифрованный текст целиком. Результат представляет собой один текстовый токен в URL-безопасном формате Base64. Внутри него находятся префикс версии, соль, одноразовый параметр nonce и аутентифицированный шифротекст. Не меняйте символы и не отделяйте часть токена для последующего ввода.

  5. Для проверки обратного преобразования вставьте сохранённый токен в поле текста, укажите тот же пароль и выберите действие «Расшифрование». Запустите обработку. При корректной паре токена и пароля инструмент восстанавливает исходный текст в кодировке UTF-8.

  6. Если нужно снова зашифровать исходный текст, выполните шифрование ещё раз, а не рассчитывайте на повторение прежнего токена. Каждая операция создаёт новую случайную 16-байтовую соль и 12-байтовый nonce. Поэтому одинаковые текст и пароль могут привести к другому зашифрованному токену.

Как понять результат и ошибки

Успешное шифрование даёт не читаемый исходный текст, а один URL-безопасный Base64-токен. Его внешний вид сам по себе не позволяет проверить, правильно ли сохранён пароль или получится ли последующее расшифрование. Для обратной операции нужен токен без изменений и пароль, использованный при шифровании.

Если расшифрование прошло успешно, результатом будет исходная UTF-8-строка. Это позволяет проверить процедуру на небольшом тексте до обработки более важного фрагмента. При пустом поле текста успешный пустой результат не означает, что пароль был проверен: пустая ветка обрабатывается раньше проверки пароля.

Ошибка при расшифровании объединяет несколько случаев. Она возникает, если токен имеет неверный формат, был изменён или указан неправильный пароль. Инструмент не сообщает, какое именно из этих условий стало причиной. Поэтому сначала проверьте, что токен скопирован полностью и без правок, затем повторно введите пароль из исходной операции. Если токен действительно изменился, восстановить исходный текст по нему не получится.

У AES-256-GCM в этом инструменте есть важная граница применения: восстановление рассчитано на токен, созданный самим инструментом, и на тот же пароль. Нельзя подставить произвольную строку, фрагмент токена или другой пароль и ожидать исходный результат. Также не стоит трактовать разные токены для одинакового текста как признак ошибки: случайные соль и nonce меняются при каждом шифровании.

Практический пример

Вы хотите передать короткую заметку в зашифрованном виде, а позднее восстановить её тем же инструментом и паролем.

Введите текст «Встреча в 15:00», задайте пароль, выберите шифрование и сохраните полученный токен. Затем вставьте этот токен, укажите тот же пароль и выберите расшифрование.

После шифрования появится один URL-безопасный Base64-токен с префиксом версии, солью, nonce и аутентифицированным шифротекстом. После расшифрования вернётся исходная UTF-8-строка.

Ограничения

  • Расшифрование требует токен, созданный инструментом, без изменений, и тот же пароль; по ошибке нельзя определить, вызвана ли она токеном или паролем.
  • Пустой текст обрабатывается отдельно и возвращает успешный пустой результат до проверки пароля.

Частые ошибки

  • Причина: при расшифровании вставлен обрезанный или изменённый токен либо введён другой пароль. Действие: заново скопируйте токен целиком и введите пароль, использованный при шифровании; отдельная ошибка не уточняет, какое из условий нарушено.

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

Нужен ли пароль для каждой операции?

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

Почему повторное шифрование выдаёт другой токен?

Нет, одинаковые текст и пароль могут дать другой токен: при каждом шифровании создаются новая соль и новый nonce.

Что проверить, если расшифрование не удалось?

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

Инструмент

Шифрование и расшифровка текста AES