- tocdepth
2
Быстрый старт
С помощью быстрого старта вы создадите криптографический ключ, зашифруете текст, а затем расшифруете его.
Перед началом работы
Зарегистрируйтесь в личном кабинете Cloud.ru.
Если вы уже зарегистрированы, войдите под своей учетной записью.
Подключите Key Manager.
Для этого в меню личного кабинета выберите и нажмите Подключить.
Создайте криптографический ключ
В личном кабинете на странице Key Manager нажмите Создать ключ.
Введите название ключа — cloudru-example-key.
Введите описание — Ключ шифрования для быстрого старта.
Выберите период ротации — Неделя. Каждую неделю будет создаваться новая версия ключа.
Выберите алгоритм шифрования — AES 192.
Нажмите Создать.
Зашифруйте текст с помощью ключа
Приведите текст «Алиса посылает Бобу сообщение» к формату Base64:
0JDQu9C40YHQsCDQv9C+0YHRi9C70LDQtdGCINCR0L7QsdGDINGB0L7QvtCx0YnQtdC90LjQtQ==
Создайте Additional Authenticated Data (AAD) в произвольной форме и приведите к формату Base64. Для примера качестве ADD используйте текст «Hello»:
SGVsbG8=
Пройдите аутентификацию в API.
Создайте персональный ключ доступа:
В личном кабинете перейдите в раздел Управление профилем и нажмите Ключи доступа.
Нажмите Создать ключ и введите краткое описание — Ключ для Key Manager.
Выберите время жизни ключа — 30 дней и нажмите Создать.
Будут сгенерированы Key ID (логин) и Key Secret (пароль).
Сохраните Key Secret (пароль).
После того как вы закроете окно, посмотреть его будет нельзя.
Получите токен с помощью curl-запроса:
curl -i --data-urlencode "grant_type=client_credentials" --data-urlencode "client_id=$KEY_ID" --data-urlencode "client_secret=$SECRET" "https://id.cloud.ru/auth/system/openid/token"
Где:
$KEY_ID — Key ID (логин);
$SECRET — Key Secret (пароль).
Используйте токен при каждом API-запросе к сервису:
Authorization: Bearer $TOKEN
Выполните HTTP-запрос:
POST https://kms.api.sbercloud.ru/v1/encrypt
В теле запроса укажите следующие параметры:
{ "keyId": "xxx-xxx", "keyVersionId": "1", "plaintext": "0JDQu9C40YHQsCDQv9C+0YHRi9C70LDQtdGCINCR0L7QsdGDINGB0L7QvtCx0YnQtdC90LjQtQ==", "additionalAuthenticatedData": "SGVsbG8=" }
Вместо
xxx-xxx
— укажите идентификатор созданного криптографического ключа.Чтобы посмотреть идентификатор, в списке ключей нажмите на название созданного ключа. Идентификатор отображается в URL-адресе после
key
.Например:
https://console.cloud.ru/projects/xx/spa/key-manager/xx/key/xxx-xxx?customerId=xx
Где
xxx-xxx
— идентификатор ключа.
Значение параметра ciphertext
в ответе — ваши зашифрованные данные.
Расшифруйте текст
Выполните HTTP-запрос:
POST https://kms.api.sbercloud.ru/v1/decrypt
В теле запроса укажите следующие параметры:
{
"keyId": "xxx-xxx",
"keyVersionId": "1",
"ciphertext": "<зашифрованный_текст>",
"additionalAuthenticatedData": "SGVsbG8="
}
Вместо xxx-xxx
укажите идентификатор созданного криптографического ключа.
В ciphertext
— ваши зашифрованные данные в формате Base64.
Значение параметра plaintext
в ответе — расшифрованные данные в формате Base64.
Чтобы получить оригинальные данные, выполните декодирование из формата Base64.
Что дальше
Вы можете продолжить работу с ключом, например:
Была ли статья полезной?
для Dev & Test