Шифрование данных с помощью Google Tink
Статья создана
Обновлена 16 июня 2026 г.
Tink
Поддерживаются Java
Добавление зависимости
Перед началом работы необходимо добавить зависимости.
Java
Go
Добавьте зависимости с помощью Apache Maven
<dependency>
<groupId>com.yandex.cloud</groupId>
<artifactId>kms-provider-tink</artifactId>
<version>2.6</version>
</dependency>
Выполните команду:
go get github.com/yandex-cloud/kms-clients-go/yckmstink
Шифрование и расшифрование
В коде используются следующие переменные:
endpoint–api.cloud.yandex.net:443.credentialProviderилиcredentials– определяет способ аутентификации, подробнее читайте в разделе Аутентификация в SDK Yandex Cloud.keyId– идентификатор ключа KMS.plaintext– открытый текст.ciphertext– шифртекст.aad– AAD-контекст.
Java
Go
Создайте aead
sdk, err := ycsdk.Build(context, ycsdk.Config{
Endpoint: endpoint,
Credentials: credentials,
})
if err != nil {...}
kmsAead := yckmstink.NewYCAEAD(keyId, sdk)
aead := aead.NewKMSEnvelopeAEAD(*aead.AES256GCMKeyTemplate(), kmsAead)
...
ciphertext, err := aead.Encrypt(plaintext, aad)
if err != nil {...}
...
plaintext, err := aead.Decrypt(ciphertext, aad)
if err != nil {...}