internal

package
v2.16.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2024 License: AGPL-3.0 Imports: 8 Imported by: 0

Documentation

Overview

Package internal implements the CloudKMS interface using go-kms-wrapping.

Adding support for a new KMS that is supported by go-kms-wrapping, simply requires implementing a New function that initializes a KMSClient.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type KMSClient

type KMSClient struct {
	Storage kmsInterface.Storage
	Wrapper kmsWrapper
}

KMSClient implements the CloudKMS interface using go-kms-wrapping.

func (*KMSClient) GetDEK

func (c *KMSClient) GetDEK(ctx context.Context, keyID string, dekSize int) ([]byte, error)

GetDEK fetches an encrypted Data Encryption Key from storage. If the key exists, it is decrypted and returned. If no such key exists, a new one is generated, encrypted and saved to storage.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL