Decrypting a Data Blob in AWS Key Management Service - AWS SDK for Go (version 1)

We announced the upcoming end-of-support for AWS SDK for Go V1. We recommend that you migrate to AWS SDK for Go V2. For dates, additional details, and information on how to migrate, please refer to the linked announcement.

Decrypting a Data Blob in AWS Key Management Service

The following example uses the AWS SDK for GoDecrypt method, which implements the Decrypt operation, to decrypt the provided string and emits the result.

import ( "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/kms" "fmt" "os" ) func main() { // Initialize a session that the SDK uses to load // credentials from the shared credentials file ~/.aws/credentials // and configuration from the shared configuration file ~/.aws/config. sess := session.Must(session.NewSessionWithOptions(session.Options{ SharedConfigState: session.SharedConfigEnable, })) // Create KMS service client svc := kms.New(sess) // Encrypted data blob := []byte("1234567890") // Decrypt the data result, err := svc.Decrypt(&kms.DecryptInput{CiphertextBlob: blob}) if err != nil { fmt.Println("Got error decrypting data: ", err) os.Exit(1) } blob_string := string(result.Plaintext) fmt.Println(blob_string)

Choose Copy to save the code locally. See the complete example on GitHub.