Google Cloud Key Management Service v1 API - Class RawEncryptResponse (3.12.0)

public sealed class RawEncryptResponse : IMessage<RawEncryptResponse>, IEquatable<RawEncryptResponse>, IDeepCloneable<RawEncryptResponse>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Key Management Service v1 API class RawEncryptResponse.

Response message for [KeyManagementService.RawEncrypt][google.cloud.kms.v1.KeyManagementService.RawEncrypt].

Inheritance

object > RawEncryptResponse

Namespace

Google.Cloud.Kms.V1

Assembly

Google.Cloud.Kms.V1.dll

Constructors

RawEncryptResponse()

public RawEncryptResponse()

RawEncryptResponse(RawEncryptResponse)

public RawEncryptResponse(RawEncryptResponse other)
Parameter
Name Description
other RawEncryptResponse

Properties

Ciphertext

public ByteString Ciphertext { get; set; }

The encrypted data. In the case of AES-GCM, the authentication tag is the [tag_length][google.cloud.kms.v1.RawEncryptResponse.tag_length] bytes at the end of this field.

Property Value
Type Description
ByteString

CiphertextCrc32C

public long? CiphertextCrc32C { get; set; }

Integrity verification field. A CRC32C checksum of the returned [RawEncryptResponse.ciphertext][google.cloud.kms.v1.RawEncryptResponse.ciphertext]. An integrity check of ciphertext can be performed by computing the CRC32C checksum of ciphertext and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.

Property Value
Type Description
long

InitializationVector

public ByteString InitializationVector { get; set; }

The initialization vector (IV) generated by the service during encryption. This value must be stored and provided in [RawDecryptRequest.initialization_vector][google.cloud.kms.v1.RawDecryptRequest.initialization_vector] at decryption time.

Property Value
Type Description
ByteString

InitializationVectorCrc32C

public long? InitializationVectorCrc32C { get; set; }

Integrity verification field. A CRC32C checksum of the returned [RawEncryptResponse.initialization_vector][google.cloud.kms.v1.RawEncryptResponse.initialization_vector]. An integrity check of initialization_vector can be performed by computing the CRC32C checksum of initialization_vector and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.

Property Value
Type Description
long

Name

public string Name { get; set; }

The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] used in encryption. Check this field to verify that the intended resource was used for encryption.

Property Value
Type Description
string

ProtectionLevel

public ProtectionLevel ProtectionLevel { get; set; }

The [ProtectionLevel][google.cloud.kms.v1.ProtectionLevel] of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] used in encryption.

Property Value
Type Description
ProtectionLevel

TagLength

public int TagLength { get; set; }

The length of the authentication tag that is appended to the end of the ciphertext.

Property Value
Type Description
int

VerifiedAdditionalAuthenticatedDataCrc32C

public bool VerifiedAdditionalAuthenticatedDataCrc32C { get; set; }

Integrity verification field. A flag indicating whether [RawEncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.RawEncryptRequest.additional_authenticated_data_crc32c] was received by [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of additional_authenticated_data. A false value of this field indicates either that // [RawEncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.RawEncryptRequest.additional_authenticated_data_crc32c] was left unset or that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've set [RawEncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.RawEncryptRequest.additional_authenticated_data_crc32c] but this field is still false, discard the response and perform a limited number of retries.

Property Value
Type Description
bool

VerifiedInitializationVectorCrc32C

public bool VerifiedInitializationVectorCrc32C { get; set; }

Integrity verification field. A flag indicating whether [RawEncryptRequest.initialization_vector_crc32c][google.cloud.kms.v1.RawEncryptRequest.initialization_vector_crc32c] was received by [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of initialization_vector. A false value of this field indicates either that [RawEncryptRequest.initialization_vector_crc32c][google.cloud.kms.v1.RawEncryptRequest.initialization_vector_crc32c] was left unset or that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've set [RawEncryptRequest.initialization_vector_crc32c][google.cloud.kms.v1.RawEncryptRequest.initialization_vector_crc32c] but this field is still false, discard the response and perform a limited number of retries.

Property Value
Type Description
bool

VerifiedPlaintextCrc32C

public bool VerifiedPlaintextCrc32C { get; set; }

Integrity verification field. A flag indicating whether [RawEncryptRequest.plaintext_crc32c][google.cloud.kms.v1.RawEncryptRequest.plaintext_crc32c] was received by [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of the plaintext. A false value of this field indicates either that [RawEncryptRequest.plaintext_crc32c][google.cloud.kms.v1.RawEncryptRequest.plaintext_crc32c] was left unset or that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've set [RawEncryptRequest.plaintext_crc32c][google.cloud.kms.v1.RawEncryptRequest.plaintext_crc32c] but this field is still false, discard the response and perform a limited number of retries.

Property Value
Type Description
bool