Set up Tink Go
Stay organized with collections
Save and categorize content based on your preferences.
All Tink Go libraries are published as Go modules that are usable with standard
Go tooling or Bazel.
After installing and setting up Tink, continue with Next Steps.
Tink Go
The core Go library is tink-go with
2.4.0 as the latest release.
Run the following command from your project directory:
go get github.com/tink-crypto/tink-go/v2@v2.4.0
AWS KMS Extension
The Tink Go AWS KMS extension is
tink-go-awskms with
2.1.0 as the latest
release.
Run the following command from your project directory:
go get github.com/tink-crypto/tink-go-awskms/v2@2.1.0
Google Cloud KMS Extension
The Tink Go Google Cloud KMS extension is
tink-go-gcpkms with
2.2.0 as the latest
release.
Run the following command from your project directory:
go get github.com/tink-crypto/tink-go-gcpkms/v2@v2.2.0
HashiCorp Vault Extension
The Tink Go HashiCorp Vault extension is
tink-go-hcvault with
2.3.0 as the latest
release.
Run the following command from your project directory:
go get github.com/tink-crypto/tink-go-hcvault/v2@v2.3.0
Next steps
Once you've finished setting up Tink, continue with the standard Tink usage
steps:
- Choose a primitive – Decide which primitive to use
based on your use case
- Manage keys – Protect your keys with your
external KMS, generate keysets, and rotate your keys
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-05-08 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-05-08 UTC."],[],[],null,["# Set up Tink Go\n\nAll Tink Go libraries are published as Go modules that are usable with [standard\nGo tooling](https://pkg.go.dev/cmd/go) or [Bazel](http://bazel.build).\n\nAfter installing and setting up Tink, continue with [Next Steps](#next_steps). \n\n### Tink Go\n\nThe core Go library is [tink-go](https://github.com/tink-crypto/tink-go) with\n[2.4.0](https://github.com/tink-crypto/tink-go/releases/tag/v2.4.0) as the latest release.\n\nGo tooling\n----------\n\nRun the following command from your project directory: \n\n go get github.com/tink-crypto/tink-go/v2@v2.4.0\n\n### AWS KMS Extension\n\nThe Tink Go [AWS KMS](https://aws.amazon.com/kms/) extension is\n[tink-go-awskms](https://github.com/tink-crypto/tink-go-awskms) with\n[2.1.0](https://github.com/tink-crypto/tink-go-awskms/releases/tag/v2.1.0) as the latest\nrelease.\n\nGo tooling\n----------\n\nRun the following command from your project directory: \n\n go get github.com/tink-crypto/tink-go-awskms/v2@2.1.0\n\n### Google Cloud KMS Extension\n\nThe Tink Go [Google Cloud KMS](https://cloud.google.com/kms/) extension is\n[tink-go-gcpkms](https://github.com/tink-crypto/tink-go-gcpkms) with\n[2.2.0](https://github.com/tink-crypto/tink-go-gcpkms/releases/tag/v2.2.0) as the latest\nrelease.\n\nGo tooling\n----------\n\nRun the following command from your project directory: \n\n go get github.com/tink-crypto/tink-go-gcpkms/v2@v2.2.0\n\n### HashiCorp Vault Extension\n\nThe Tink Go [HashiCorp Vault](https://www.vaultproject.io/) extension is\n[tink-go-hcvault](https://github.com/tink-crypto/tink-go-hcvault) with\n[2.3.0](https://github.com/tink-crypto/tink-go-hcvault/releases/tag/v2.3.0) as the latest\nrelease.\n\nGo tooling\n----------\n\nRun the following command from your project directory: \n\n go get github.com/tink-crypto/tink-go-hcvault/v2@v2.3.0\n\nNext steps\n----------\n\nOnce you've finished setting up Tink, continue with the standard Tink usage\nsteps:\n\n- [Choose a primitive](/tink/choose-primitive) -- Decide which primitive to use based on your use case\n- [Manage keys](/tink/key-management-overview) -- Protect your keys with your external KMS, generate keysets, and rotate your keys"]]