Шифрование данных с помощью AWS Encryption SDK
Статья создана
Обновлена 6 февраля 2025 г.
AWS Encryption SDK
Провайдер Yandex Cloud для AWS Encryption SDK
Добавление зависимостей
Перед началом работы необходимо добавить зависимости.
Java
Добавьте зависимости с помощью Apache Maven
<dependency>
<groupId>com.yandex.cloud</groupId>
<artifactId>kms-provider-awscrypto</artifactId>
<version>2.1</version>
</dependency>
Шифрование и расшифрование
Создайте провайдер Yandex Cloud для AWS Encryption SDK и используйте методы класса AwsCrypto
Java
YcKmsMasterKeyProvider provider = new YcKmsMasterKeyProvider()
.withEndpoint(endpoint)
.withCredentials(credentialProvider)
.withKeyId(keyId);
AwsCrypto awsCrypto = AwsCrypto.standard();
...
byte[] ciphertext = awsCrypto.encryptData(provider, plaintext, aad).getResult();
...
byte[] plaintext = awsCrypto.decryptData(provider, ciphertext).getResult();
Где:
endpoint
–api.cloud.yandex.net:443
.credentials
– определяет способ аутентификации, подробнее читайте в разделе Аутентификация в SDK Yandex Cloud.keyId
– идентификатор ключа KMS.plaintext
– открытый текст.ciphertext
– шифртекст.aad
– AAD-контекст.