in plugin/v1/plugin.go [69:89]
func (g *Plugin) Encrypt(ctx context.Context, request *EncryptRequest) (*EncryptResponse, error) {
glog.V(4).Infoln("Processing request for encryption.")
defer plugin.RecordCloudKMSOperation("encrypt", time.Now().UTC())
resp, err := g.keyService.Encrypt(g.keyURI, &cloudkms.EncryptRequest{
Plaintext: base64.StdEncoding.EncodeToString(request.Plain),
}).Context(ctx).Do()
if err != nil {
plugin.CloudKMSOperationalFailuresTotal.WithLabelValues("encrypt").Inc()
return nil, err
}
cipher, err := base64.StdEncoding.DecodeString(resp.Ciphertext)
if err != nil {
return nil, err
}
return &EncryptResponse{
Cipher: cipher,
}, nil
}