func (v MemKeyVault) Unwrap(ctx context.Context, ciphertext []byte, kekLabel string) ([]byte, error) {
	kek, ok := v.m[kekLabel]
	if !ok {
		return nil, errKEKNotFound.WithAttributes("label", kekLabel)
	}
	return crypto.UnwrapKey(ciphertext, kek)
}
Unwrap implements KeyVault.
package cryptoutil
import (
	"bytes"
	"context"
	"crypto/tls"
	"crypto/x509"
	"encoding/pem"
	"strings"
	"go.thethings.network/lorawan-stack/v3/pkg/crypto"
	"go.thethings.network/lorawan-stack/v3/pkg/types"
)
type MemKeyVault struct {
	ComponentPrefixKEKLabeler
	m map[string][]byte
}
func NewMemKeyVault(m map[string][]byte) *MemKeyVault {
	return &MemKeyVault{
		m: m,
	}
}
func (v MemKeyVault) Wrap(ctx context.Context, plaintext []byte, kekLabel string) ([]byte, error) {
	kek, ok := v.m[kekLabel]
	if !ok {
		return nil, errKEKNotFound.WithAttributes("label", kekLabel)
	}
	return crypto.WrapKey(plaintext, kek)
}