Class: Google::Apis::CloudkmsV1::EncryptRequest

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudkms_v1/classes.rb,
lib/google/apis/cloudkms_v1/representations.rb,
lib/google/apis/cloudkms_v1/representations.rb

Overview

Request message for KeyManagementService.Encrypt.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ EncryptRequest

Returns a new instance of EncryptRequest.



882
883
884
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 882

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#additional_authenticated_dataString

Optional. Optional data that, if specified, must also be provided during decryption through DecryptRequest.additional_authenticated_data. The maximum size depends on the key version's protection_level. For SOFTWARE keys, the AAD must be no larger than 64KiB. For HSM keys, the combined length of the plaintext and additional_authenticated_data fields must be no larger than 8KiB. Corresponds to the JSON property additionalAuthenticatedData NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


839
840
841
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 839

def additional_authenticated_data
  @additional_authenticated_data
end

#additional_authenticated_data_crc32cFixnum

Optional. An optional CRC32C checksum of the EncryptRequest. additional_authenticated_data. If specified, KeyManagementService will verify the integrity of the received EncryptRequest.additional_authenticated_data using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(EncryptRequest.additional_authenticated_data) is equal to EncryptRequest.additional_authenticated_data_crc32c, and if so, 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. Corresponds to the JSON property additionalAuthenticatedDataCrc32c

Returns:

  • (Fixnum)


855
856
857
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 855

def additional_authenticated_data_crc32c
  @additional_authenticated_data_crc32c
end

#plaintextString

Required. The data to encrypt. Must be no larger than 64KiB. The maximum size depends on the key version's protection_level. For SOFTWARE keys, the plaintext must be no larger than 64KiB. For HSM keys, the combined length of the plaintext and additional_authenticated_data fields must be no larger than 8KiB. Corresponds to the JSON property plaintext NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


865
866
867
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 865

def plaintext
  @plaintext
end

#plaintext_crc32cFixnum

Optional. An optional CRC32C checksum of the EncryptRequest.plaintext. If specified, KeyManagementService will verify the integrity of the received EncryptRequest.plaintext using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(EncryptRequest.plaintext) is equal to EncryptRequest.plaintext_crc32c, and if so, 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. Corresponds to the JSON property plaintextCrc32c

Returns:

  • (Fixnum)


880
881
882
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 880

def plaintext_crc32c
  @plaintext_crc32c
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



887
888
889
890
891
892
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 887

def update!(**args)
  @additional_authenticated_data = args[:additional_authenticated_data] if args.key?(:additional_authenticated_data)
  @additional_authenticated_data_crc32c = args[:additional_authenticated_data_crc32c] if args.key?(:additional_authenticated_data_crc32c)
  @plaintext = args[:plaintext] if args.key?(:plaintext)
  @plaintext_crc32c = args[:plaintext_crc32c] if args.key?(:plaintext_crc32c)
end