Шифрование данных с помощью CLI и API Yandex Cloud
В сервисе Yandex Key Management Service с помощью CLI и API вы можете шифровать и расшифровывать данные небольшого размера (до 32 КБ). Подробнее о возможных способах шифрования читайте в разделе Какой способ шифрования выбрать?
Перед началом работы
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
Зашифруйте данные
Примечание
Изменения, вызванные eventually consistent операциями, становятся применимыми для шифрования с задержкой до трех часов.
Команда зашифрует открытый текст, переданный в файле --plaintext-file, и запишет полученный шифртекст в файл --ciphertext-file.
--id— идентификатор ключа KMS, должен быть указан один из флагов:--idили--name.--name— название ключа KMS, должен быть указан один из флагов:--idили--name.--version-id— (опционально) версия ключа KMS, которая будет использоваться для шифрования. По умолчанию используется основная.--plaintext-file— входной файл с открытым текстом.--aad-context-file— (опционально) входной файл с AAD-контекстом.--ciphertext-file— выходной файл с шифртекстом.
yc kms symmetric-crypto encrypt \
--id abj76v82fics******** \
--plaintext-file plaintext-file \
--ciphertext-file ciphertext-file
Чтобы зашифровать данные, воспользуйтесь методом REST API encrypt для ресурса SymmetricCrypto или вызовом gRPC API SymmetricCryptoService/Encrypt.
Расшифруйте данные
Примечание
Изменения, вызванные eventually consistent операциями, становятся применимыми для расшифрования с задержкой до трех часов.
Команда расшифрует шифртекст, переданный в файле --ciphertext-file, и запишет полученный открытый текст в файл --plaintext-file:
--id— идентификатор ключа KMS, должен быть указан один из флагов:--idили--name.--name— название ключа KMS, должен быть указан один из флагов:--idили--name.--ciphertext-file— входной файл с открытым текстом.--aad-context-file— (опционально) входной файл с AAD-контекстом.--plaintext-file— выходной файл с шифртекстом.
yc kms symmetric-crypto decrypt \
--id abj76v82fics******** \
--ciphertext-file ciphertext-file \
--plaintext-file decrypted-file
Чтобы расшифровать данные, воспользуйтесь методом REST API decrypt для ресурса SymmetricCrypto или вызовом gRPC API SymmetricCryptoService/Decrypt.