Быстрый старт
Инструкция поможет создать криптографический ключ, зашифровать текст и расшифровать его.
Перед началом работы
Перед началом работы зарегистрируйтесь в личном кабинете Cloud.ru. В личном кабинете можно управлять сервисами, следить за расходами и потреблением, а также настраивать доступ для других пользователей.
Если вы уже зарегистрированы, войдите в личный кабинет.
Чтобы подключить Key Manager:
Перейдите в личный кабинет.
На верхней панели слева нажмите и выберите
.Нажмите Подключить.
Создайте криптографический ключ
Пройдите аутентификацию в API.
Выполните HTTP-запрос:
POST https://kms.api.sbercloud.ru/api/sckm/v1/keys
В теле запроса укажите следующие параметры:
parent_id
— идентификатор пространства имен.name
— имя ключа.description
— описание ключа в свободной форме.rotation_period
— период ротации в секундах, например — 86400s.default_algorithm
— алгоритм шифрования (AES 128, AES 192 или AES 256).
Подсказка
Идентификатор Service Instance ID всегда отображается в URL-адресе после наименования сервиса. Например:
https://console.cloud.ru/projects/e0e000ac-0afb-0000-bf0c-b04886911d18/<service-name>/1d111aa-aede-111c-a11f-00c8c4cf463a
Где
1d111aa-aede-111c-a11f-00c8c4cf463a
— идентификатор Service Instance ID.
Ответ будет содержать идентификатор ключа (значение параметра key_id
).
Скопируйте и сохраните его.
Зашифруйте текст с помощью ключа
Приведите ваш текст, например «Алиса посылает Бобу сообщение», к формату Base64:
Создайте Additional Authenticated Data (AAD) в произвольной форме и приведите к формату Base64. Например, в качестве AAD может быть использовано слово «Алиса» в формате Base64.
Подсказка
Aditional Authenticated Data — это дополнительные данные, которые передаются в значении параметра
additional_authenticated_data
как часть запроса на шифрование или дешифрование. Используется в качестве проверки целостности и может помочь защитить ваши данные от атак.Выполните HTTP-запрос:
POST 'https://kms.api.sbercloud.ru/api/sckm/v1/encrypt'
В теле запроса укажите следующие параметры:
key_id
— сохраненный идентификатор ключа, например «049b72a3-3hb7-42e7-9026-a2b4o33711da».key_version_id
— идентификатор версии ключа, например 1.plaintext
— ваши данные для шифрования. В данном примере текст «Алиса посылает Бобу сообщение» в формате Base64.additional_authenticated_data
— дополнительные аутентифицированные данные. В данном примере слово «Алиса» в формате Base64.
Значение параметра
ciphertext
в ответе — ваши зашифрованные данные.
Внимание
Чтобы в последующем расшифровать данные, сохраните идентификатор ключа, идентификатор версии ключа и дополнительные аутентифицированные данные.
Расшифруйте текст
Выполните HTTP-запрос:
POST 'https://kms.api.sbercloud.ru/api/sckm/v1/dencrypt'
В теле запроса укажите следующие параметры:
key_id
— идентификатор ключа, используемый при шифровании данных. В данном примере — «049b72a3-3hb7-42e7-9026-a2b4o33711da».key_version_id
— идентификатор версии ключа, используемый при шифровании данных. В данном примере — 1.plaintext
— ваши зашифрованные данные в формате Base64.additional_authenticated_data
— дополнительные аутентифицированные данные, используемые при шифровании данных.
Значение параметра plaintext
в ответе — ваши расшифрованные данные в формате Base64.
Чтобы получить ваши оригинальные данные, выполните декодирование из формата Base64.
для Dev & Test