Быстрый старт
С помощью быстрого старта вы создадите симметричный или асимметричный криптографический ключ, зашифруете текст, а затем расшифруете его.
Перед началом работы
-
Если вы уже зарегистрированы, войдите под своей учетной записью.
Подключите Key Management. Для этого в меню
личного кабинета выберите Управление → Key Management и нажмите Подключить.
Создайте криптографический ключ
В личном кабинете на странице Key Management выберите, какой ключ будет создаваться (симметричный или асимметричный), и перейдите на нужную вкладку:
Симметричные ключи;
Асимметричные ключи.
Нажмите Создать ключ.
Введите название ключа — cloudru-example-key.
Введите описание — Ключ шифрования для быстрого старта.
Выберите период ротации — Неделя. Каждую неделю будет создаваться новая версия ключа.
Выберите алгоритм шифрования — AES 192.
Нажмите Создать.
Зашифруйте текст с помощью ключа
Выберите, с помощью какого ключа будет выполняться шифрование данных:
Приведите текст «Алиса посылает Бобу сообщение» к формату Base64:
0JDQu9C40YHQsCDQv9C+0YHRi9C70LDQtdGCINCR0L7QsdGDINGB0L7QvtCx0YnQtdC90LjQtQ==Создайте Additional Authenticated Data (AAD) в произвольной форме и приведите к формату Base64. Для примера качестве ADD используйте текст «Hello»:
SGVsbG8=Пройдите аутентификацию в API.
Выполните запрос:
curl -X POST --location 'https://kms.api.cloud.ru/v1/encrypt' \--header 'accept: application/json' \--header 'Content-Type: application/json' \--header 'Authorization: Bearer <authentication_token>' \--data '{"keyId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","keyVersionId": 2,"plaintext": "0JxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxtQ==","additionalAuthenticatedData": "xxxxxxxx"}'Где:
keyId — идентификатор ключа;
keyVersionId — идентификатор версии ключа;
plaintext — ваши данные в формате Base64, не могут превышать 64 КБ;
additionalAuthenticatedData — дополнительные аутентифицированные данные (Additional Authenticated Data).
Пример ответа
В ответе вернется значение параметра ciphertext — ваши зашифрованные данные в формате Base64.
Чтобы посмотреть идентификатор, в списке ключей нажмите на название созданного ключа. Идентификатор отображается в URL-адресе после key.
Например:
https://console.cloud.ru/spa/key-manager/xx/key/<key-id>?customerId=<customerId>xx&projectId=<projectId>
Где:
key-id — идентификатор ключа;
customerId — идентификатор пользователя;
projectId — идентификатор проекта.
Расшифруйте текст
Выполните запрос:
curl -X POST --location 'https://kms.api.cloud.ru/v1/decrypt' \--header 'accept: application/json' \--header 'Content-Type: application/json' \--header 'Authorization: Bearer <authentication_token>' \--data '{"keyId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","ciphertext": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","additionalAuthenticatedData": "xxxxxxxx"}'
Где:
keyId — идентификатор ключа, используемый при шифровании данных;
ciphertext — ваши зашифрованные данные в формате Base64;
additionalAuthenticatedData — дополнительные аутентифицированные данные (Additional Authenticated Data).
Для расшифровывания зашифрованных данных нужно знать keyId и additionalAuthenticatedData (если использовались при шифровании). ciphertext и additionalAuthenticatedData должны быть в формате Base64. Если при шифровании данных использовался AAD, то при расшифровывании значение AAD должно быть таким же, как и для шифрования данных. Иначе расшифровка будет выполнена некорректно.
Значение параметра plaintext в ответе — расшифрованные данные в формате Base64. Чтобы получить оригинальные данные, выполните декодирование из формата Base64.
Что дальше
Вы можете продолжить работу с ключом, например:
- Перед началом работы
- Создайте криптографический ключ
- Зашифруйте текст с помощью ключа
- Расшифруйте текст
- Что дальше