Categorygithub.com/sethvargo/go-gcpkms
repository
0.3.0
Repository: https://github.com/sethvargo/go-gcpkms.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# README

Google Cloud KMS - Golang Crypto Interface

GoDoc

This package wraps the Google Cloud KMS Go library to implement Go's crypto.Decrypter and crypto.Signer interfaces. It only works with Google Cloud KMS asymmetric keys.

Usage

package main

import (
  kms "cloud.google.com/go/kms/apiv1"
  "github.com/sethvargo/go-gcpkms/pkg/gcpkms"
)

func main() {
  ctx := context.Background()
  kmsClient, err := kms.NewKeyManagementClient(ctx)
  if err != nil {
    log.Fatal(err)
  }

  keyID := "projects/p/locations/l/keyRings/r/cryptoKeys/k/cryptoKeyVersions/1"
  signer, err := gcpkms.NewSigner(ctx, kmsClient, keyID)
  if err != nil {
    log.Fatal(err)
  }

  sig, err := signer.Sign(nil, digest, nil)
  if err != nil {
    log.Fatal(err)
  }
}

For more examples, please see the package godoc.