Skip to content

Releases: tink-crypto/tink-go-awskms

Tink Go AWS KMS Extension v2.1.0

07 May 09:18
Compare
Choose a tag to compare

Tink is a multi-language, cross-platform library that provides simple and misuse-proof APIs for common cryptographic tasks.

This is Tink Go AWS KMS Extension 2.1.0

What's new

The complete list of changes since 2.0.0 can be found here.

  • Changed target Go language version to 1.21
  • Upgraded dependencies:
    • Go:
      • Upgraded github.com/aws/aws-sdk-go to v1.49.21
      • Upgraded golang.org/x/crypto to v0.17.0
      • Upgraded golang.org/x/sys to v0.15.0
      • Upgraded github.com/tink-crypto/tink-go to v2.1.0
      • Upgraded google.golang.org/protobuf to v1.33.0
    • Bazel
      • Upgraded to Bazel 6.4.0
      • Added Bzlmod build configuration

Get started

To get started using Tink, see the setup guide.

Go Tooling

go get github.com/tink-crypto/tink-go-awskms/v2@v2.1.0

Bazel

You can use tink-go-awskms in your Bazel proejct using Gazelle.

Tink Go AWS KMS Extension v2.0.0

22 Jun 09:29
Compare
Choose a tag to compare

Tink is a multi-language, cross-platform library that provides simple and misuse-proof APIs for common cryptographic tasks.

This is Tink Go AWS KMS Extension 2.0.0

What's new

This is the first release from https://github.com/tink-crypto/tink-go-awskms.

The complete list of changes since 1.7.0 can be found here.

  • Upgraded to use Bazel 6.0.0
  • Changed target Go language version to 1.19
  • Upgraded to Protobuf X.21.9
  • Include key ID in all decryption requests to enable server side key commitment enforcement (commit) and consequently remove the local duplicate check (commit)
  • Added a solution to the ciphertext incompatibility problem described in google/tink#568. In particular, the EncryptionContextName can now be set to "associatedData", which aligns with the Tink KMS extensions in other languages (commit)
  • Minor refactoring and improvements
  • Added/upgraded CI test scripts

Get started

To get started using Tink, see the setup guide.

Go Tooling

go get github.com/tink-crypto/tink-go-awskms/v2@v2.0.0

Bazel

workspace(name = "example")

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "io_bazel_rules_go",
    sha256 = "6dc2da7ab4cf5d7bfc7c949776b1b7c733f05e56edc4bcd9022bb249d2e2a996",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.1/rules_go-v0.39.1.zip",
        "https://github.com/bazelbuild/rules_go/releases/download/v0.39.1/rules_go-v0.39.1.zip",
    ],
)

http_archive(
    name = "bazel_gazelle",
    sha256 = "ecba0f04f96b4960a5b250c8e8eeec42281035970aa8852dda73098274d14a1d",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
        "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
    ],
)

# [Optional]: tink-go is imported as a go_repository by tink_go_awskms_dependencies.
# this is needed only if the user wants to pin to a specific commit/version of tink-go.
# http_archive(
#     name = "com_github_tink_crypto_tink_go_v2",
#     urls = ["https://github.com/tink-crypto/tink-go/archive/refs/tags/v2.0.0.zip"],
#     strip_prefix = "tink-go-2.0.0",
#     sha256 = "27f7446a29956173e10a65d0f71f7cd795ba3049b96fa5fae47333e06661ac2a",
# )

http_archive(
    name = "com_github_tink_crypto_tink_go_awskms",
    urls = ["https://github.com/tink-crypto/tink-go-awskms/archive/refs/tags/v2.0.0.zip"],
    strip_prefix = "tink-go-awskms-2.0.0",
    sha256 = "8f1281ab0f04af4c114b46aeb3a5db5040604225c7797782c1274f75eb6f660c",
)

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository")

# [Optional]: tink-go is imported as a go_repository by tink_go_awskms_dependencies.
# this is needed only if the user wants to pin to a specific commit/version of tink-go.
# load("@com_github_tink_crypto_tink_go_v2//:deps.bzl", tink_go_dependencies="go_dependencies")
#
# tink_go_dependencies()

load("@com_github_tink_crypto_tink_go_awskms//:deps.bzl", "tink_go_awskms_dependencies")

tink_go_awskms_dependencies()

#######################################
#
# Your project dependencies here.
#
#######################################

go_rules_dependencies()

go_register_toolchains(version = "1.19.9")

gazelle_dependencies()