Class KeyManagementServiceGrpc.KeyManagementServiceBlockingStub (2.45.0)

public static final class KeyManagementServiceGrpc.KeyManagementServiceBlockingStub extends AbstractBlockingStub<KeyManagementServiceGrpc.KeyManagementServiceBlockingStub>

A stub to allow clients to do synchronous rpc calls to service KeyManagementService.

Google Cloud Key Management Service Manages cryptographic keys and operations using those keys. Implements a REST model with the following objects:

Inheritance

java.lang.Object > io.grpc.stub.AbstractStub > io.grpc.stub.AbstractBlockingStub > KeyManagementServiceGrpc.KeyManagementServiceBlockingStub

Methods

asymmetricDecrypt(AsymmetricDecryptRequest request)

public AsymmetricDecryptResponse asymmetricDecrypt(AsymmetricDecryptRequest request)

Decrypts data that was encrypted with a public key retrieved from GetPublicKey corresponding to a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_DECRYPT.

Parameter
Name Description
request AsymmetricDecryptRequest
Returns
Type Description
AsymmetricDecryptResponse

asymmetricSign(AsymmetricSignRequest request)

public AsymmetricSignResponse asymmetricSign(AsymmetricSignRequest request)

Signs data using a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_SIGN, producing a signature that can be verified with the public key retrieved from GetPublicKey.

Parameter
Name Description
request AsymmetricSignRequest
Returns
Type Description
AsymmetricSignResponse

build(Channel channel, CallOptions callOptions)

protected KeyManagementServiceGrpc.KeyManagementServiceBlockingStub build(Channel channel, CallOptions callOptions)
Parameters
Name Description
channel io.grpc.Channel
callOptions io.grpc.CallOptions
Returns
Type Description
KeyManagementServiceGrpc.KeyManagementServiceBlockingStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

createCryptoKey(CreateCryptoKeyRequest request)

public CryptoKey createCryptoKey(CreateCryptoKeyRequest request)

Create a new CryptoKey within a KeyRing. CryptoKey.purpose and CryptoKey.version_template.algorithm are required.

Parameter
Name Description
request CreateCryptoKeyRequest
Returns
Type Description
CryptoKey

createCryptoKeyVersion(CreateCryptoKeyVersionRequest request)

public CryptoKeyVersion createCryptoKeyVersion(CreateCryptoKeyVersionRequest request)

Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED.

Parameter
Name Description
request CreateCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion

createImportJob(CreateImportJobRequest request)

public ImportJob createImportJob(CreateImportJobRequest request)

Create a new ImportJob within a KeyRing. ImportJob.import_method is required.

Parameter
Name Description
request CreateImportJobRequest
Returns
Type Description
ImportJob

createKeyRing(CreateKeyRingRequest request)

public KeyRing createKeyRing(CreateKeyRingRequest request)

Create a new KeyRing in a given Project and Location.

Parameter
Name Description
request CreateKeyRingRequest
Returns
Type Description
KeyRing

decrypt(DecryptRequest request)

public DecryptResponse decrypt(DecryptRequest request)

Decrypts data that was protected by Encrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.

Parameter
Name Description
request DecryptRequest
Returns
Type Description
DecryptResponse

destroyCryptoKeyVersion(DestroyCryptoKeyVersionRequest request)

public CryptoKeyVersion destroyCryptoKeyVersion(DestroyCryptoKeyVersionRequest request)

Schedule a CryptoKeyVersion for destruction. Upon calling this method, CryptoKeyVersion.state will be set to DESTROY_SCHEDULED, and destroy_time will be set to the time destroy_scheduled_duration in the future. At that time, the state will automatically change to DESTROYED, and the key material will be irrevocably destroyed. Before the destroy_time is reached, RestoreCryptoKeyVersion may be called to reverse the process.

Parameter
Name Description
request DestroyCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion

encrypt(EncryptRequest request)

public EncryptResponse encrypt(EncryptRequest request)

Encrypts data, so that it can only be recovered by a call to Decrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.

Parameter
Name Description
request EncryptRequest
Returns
Type Description
EncryptResponse

generateRandomBytes(GenerateRandomBytesRequest request)

public GenerateRandomBytesResponse generateRandomBytes(GenerateRandomBytesRequest request)

Generate random bytes using the Cloud KMS randomness source in the provided location.

Parameter
Name Description
request GenerateRandomBytesRequest
Returns
Type Description
GenerateRandomBytesResponse

getCryptoKey(GetCryptoKeyRequest request)

public CryptoKey getCryptoKey(GetCryptoKeyRequest request)

Returns metadata for a given CryptoKey, as well as its primary CryptoKeyVersion.

Parameter
Name Description
request GetCryptoKeyRequest
Returns
Type Description
CryptoKey

getCryptoKeyVersion(GetCryptoKeyVersionRequest request)

public CryptoKeyVersion getCryptoKeyVersion(GetCryptoKeyVersionRequest request)

Returns metadata for a given CryptoKeyVersion.

Parameter
Name Description
request GetCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion

getImportJob(GetImportJobRequest request)

public ImportJob getImportJob(GetImportJobRequest request)

Returns metadata for a given ImportJob.

Parameter
Name Description
request GetImportJobRequest
Returns
Type Description
ImportJob

getKeyRing(GetKeyRingRequest request)

public KeyRing getKeyRing(GetKeyRingRequest request)

Returns metadata for a given KeyRing.

Parameter
Name Description
request GetKeyRingRequest
Returns
Type Description
KeyRing

getPublicKey(GetPublicKeyRequest request)

public PublicKey getPublicKey(GetPublicKeyRequest request)

Returns the public key for the given CryptoKeyVersion. The CryptoKey.purpose must be ASYMMETRIC_SIGN or ASYMMETRIC_DECRYPT.

Parameter
Name Description
request GetPublicKeyRequest
Returns
Type Description
PublicKey

importCryptoKeyVersion(ImportCryptoKeyVersionRequest request)

public CryptoKeyVersion importCryptoKeyVersion(ImportCryptoKeyVersionRequest request)

Import wrapped key material into a CryptoKeyVersion. All requests must specify a CryptoKey. If a CryptoKeyVersion is additionally specified in the request, key material will be reimported into that version. Otherwise, a new version will be created, and will be assigned the next sequential id within the CryptoKey.

Parameter
Name Description
request ImportCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion

listCryptoKeyVersions(ListCryptoKeyVersionsRequest request)

public ListCryptoKeyVersionsResponse listCryptoKeyVersions(ListCryptoKeyVersionsRequest request)

Lists CryptoKeyVersions.

Parameter
Name Description
request ListCryptoKeyVersionsRequest
Returns
Type Description
ListCryptoKeyVersionsResponse

listCryptoKeys(ListCryptoKeysRequest request)

public ListCryptoKeysResponse listCryptoKeys(ListCryptoKeysRequest request)

Lists CryptoKeys.

Parameter
Name Description
request ListCryptoKeysRequest
Returns
Type Description
ListCryptoKeysResponse

listImportJobs(ListImportJobsRequest request)

public ListImportJobsResponse listImportJobs(ListImportJobsRequest request)

Lists ImportJobs.

Parameter
Name Description
request ListImportJobsRequest
Returns
Type Description
ListImportJobsResponse

listKeyRings(ListKeyRingsRequest request)

public ListKeyRingsResponse listKeyRings(ListKeyRingsRequest request)

Lists KeyRings.

Parameter
Name Description
request ListKeyRingsRequest
Returns
Type Description
ListKeyRingsResponse

macSign(MacSignRequest request)

public MacSignResponse macSign(MacSignRequest request)

Signs data using a CryptoKeyVersion with CryptoKey.purpose MAC, producing a tag that can be verified by another source with the same key.

Parameter
Name Description
request MacSignRequest
Returns
Type Description
MacSignResponse

macVerify(MacVerifyRequest request)

public MacVerifyResponse macVerify(MacVerifyRequest request)

Verifies MAC tag using a CryptoKeyVersion with CryptoKey.purpose MAC, and returns a response that indicates whether or not the verification was successful.

Parameter
Name Description
request MacVerifyRequest
Returns
Type Description
MacVerifyResponse

rawDecrypt(RawDecryptRequest request)

public RawDecryptResponse rawDecrypt(RawDecryptRequest request)

Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.

Parameter
Name Description
request RawDecryptRequest
Returns
Type Description
RawDecryptResponse

rawEncrypt(RawEncryptRequest request)

public RawEncryptResponse rawEncrypt(RawEncryptRequest request)

Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.

Parameter
Name Description
request RawEncryptRequest
Returns
Type Description
RawEncryptResponse

restoreCryptoKeyVersion(RestoreCryptoKeyVersionRequest request)

public CryptoKeyVersion restoreCryptoKeyVersion(RestoreCryptoKeyVersionRequest request)

Restore a CryptoKeyVersion in the DESTROY_SCHEDULED state. Upon restoration of the CryptoKeyVersion, state will be set to DISABLED, and destroy_time will be cleared.

Parameter
Name Description
request RestoreCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion

updateCryptoKey(UpdateCryptoKeyRequest request)

public CryptoKey updateCryptoKey(UpdateCryptoKeyRequest request)

Update a CryptoKey.

Parameter
Name Description
request UpdateCryptoKeyRequest
Returns
Type Description
CryptoKey

updateCryptoKeyPrimaryVersion(UpdateCryptoKeyPrimaryVersionRequest request)

public CryptoKey updateCryptoKeyPrimaryVersion(UpdateCryptoKeyPrimaryVersionRequest request)

Update the version of a CryptoKey that will be used in Encrypt. Returns an error if called on a key whose purpose is not ENCRYPT_DECRYPT.

Parameter
Name Description
request UpdateCryptoKeyPrimaryVersionRequest
Returns
Type Description
CryptoKey

updateCryptoKeyVersion(UpdateCryptoKeyVersionRequest request)

public CryptoKeyVersion updateCryptoKeyVersion(UpdateCryptoKeyVersionRequest request)

Update a CryptoKeyVersion's metadata. state may be changed between ENABLED and DISABLED using this method. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to move between other states.

Parameter
Name Description
request UpdateCryptoKeyVersionRequest
Returns
Type Description
CryptoKeyVersion