Class CryptoDeterministicConfig.Builder

  • All Implemented Interfaces:
    CryptoDeterministicConfigOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
    Enclosing class:
    CryptoDeterministicConfig

    public static final class CryptoDeterministicConfig.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
    implements CryptoDeterministicConfigOrBuilder
     Pseudonymization method that generates deterministic encryption for the given
     input. Outputs a base64 encoded representation of the encrypted output.
     Uses AES-SIV based on the RFC https://tools.ietf.org/html/rfc5297.
     
    Protobuf type google.privacy.dlp.v2.CryptoDeterministicConfig
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
      • getDefaultInstanceForType

        public CryptoDeterministicConfig getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public CryptoDeterministicConfig build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public CryptoDeterministicConfig buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • setRepeatedField

        public CryptoDeterministicConfig.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                                  int index,
                                                                  Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
      • mergeFrom

        public CryptoDeterministicConfig.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                                           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                    throws IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<CryptoDeterministicConfig.Builder>
        Throws:
        IOException
      • hasCryptoKey

        public boolean hasCryptoKey()
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
        Specified by:
        hasCryptoKey in interface CryptoDeterministicConfigOrBuilder
        Returns:
        Whether the cryptoKey field is set.
      • getCryptoKey

        public CryptoKey getCryptoKey()
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
        Specified by:
        getCryptoKey in interface CryptoDeterministicConfigOrBuilder
        Returns:
        The cryptoKey.
      • setCryptoKey

        public CryptoDeterministicConfig.Builder setCryptoKey​(CryptoKey value)
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
      • setCryptoKey

        public CryptoDeterministicConfig.Builder setCryptoKey​(CryptoKey.Builder builderForValue)
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
      • mergeCryptoKey

        public CryptoDeterministicConfig.Builder mergeCryptoKey​(CryptoKey value)
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
      • clearCryptoKey

        public CryptoDeterministicConfig.Builder clearCryptoKey()
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
      • getCryptoKeyBuilder

        public CryptoKey.Builder getCryptoKeyBuilder()
         The key used by the encryption function. For deterministic encryption
         using AES-SIV, the provided key is internally expanded to 64 bytes prior to
         use.
         
        .google.privacy.dlp.v2.CryptoKey crypto_key = 1;
      • hasSurrogateInfoType

        public boolean hasSurrogateInfoType()
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
        Specified by:
        hasSurrogateInfoType in interface CryptoDeterministicConfigOrBuilder
        Returns:
        Whether the surrogateInfoType field is set.
      • getSurrogateInfoType

        public InfoType getSurrogateInfoType()
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
        Specified by:
        getSurrogateInfoType in interface CryptoDeterministicConfigOrBuilder
        Returns:
        The surrogateInfoType.
      • setSurrogateInfoType

        public CryptoDeterministicConfig.Builder setSurrogateInfoType​(InfoType value)
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
      • setSurrogateInfoType

        public CryptoDeterministicConfig.Builder setSurrogateInfoType​(InfoType.Builder builderForValue)
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
      • mergeSurrogateInfoType

        public CryptoDeterministicConfig.Builder mergeSurrogateInfoType​(InfoType value)
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
      • clearSurrogateInfoType

        public CryptoDeterministicConfig.Builder clearSurrogateInfoType()
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
      • getSurrogateInfoTypeBuilder

        public InfoType.Builder getSurrogateInfoTypeBuilder()
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
      • getSurrogateInfoTypeOrBuilder

        public InfoTypeOrBuilder getSurrogateInfoTypeOrBuilder()
         The custom info type to annotate the surrogate with.
         This annotation will be applied to the surrogate by prefixing it with
         the name of the custom info type followed by the number of
         characters comprising the surrogate. The following scheme defines the
         format: {info type name}({surrogate character count}):{surrogate}
        
         For example, if the name of custom info type is 'MY_TOKEN_INFO_TYPE' and
         the surrogate is 'abc', the full replacement value
         will be: 'MY_TOKEN_INFO_TYPE(3):abc'
        
         This annotation identifies the surrogate when inspecting content using the
         custom info type 'Surrogate'. This facilitates reversal of the
         surrogate when it occurs in free text.
        
         Note: For record transformations where the entire cell in a table is being
         transformed, surrogates are not mandatory. Surrogates are used to denote
         the location of the token and are necessary for re-identification in free
         form text.
        
         In order for inspection to work properly, the name of this info type must
         not occur naturally anywhere in your data; otherwise, inspection may either
        
         - reverse a surrogate that does not correspond to an actual identifier
         - be unable to parse the surrogate and result in an error
        
         Therefore, choose your custom info type name carefully after considering
         what your data looks like. One way to select a name that has a high chance
         of yielding reliable detection is to include one or more unicode characters
         that are highly improbable to exist in your data.
         For example, assuming your data is entered from a regular ASCII keyboard,
         the symbol with the hex code point 29DD might be used like so:
         ⧝MY_TOKEN_TYPE.
         
        .google.privacy.dlp.v2.InfoType surrogate_info_type = 2;
        Specified by:
        getSurrogateInfoTypeOrBuilder in interface CryptoDeterministicConfigOrBuilder
      • hasContext

        public boolean hasContext()
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
        Specified by:
        hasContext in interface CryptoDeterministicConfigOrBuilder
        Returns:
        Whether the context field is set.
      • getContext

        public FieldId getContext()
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
        Specified by:
        getContext in interface CryptoDeterministicConfigOrBuilder
        Returns:
        The context.
      • setContext

        public CryptoDeterministicConfig.Builder setContext​(FieldId value)
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
      • setContext

        public CryptoDeterministicConfig.Builder setContext​(FieldId.Builder builderForValue)
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
      • mergeContext

        public CryptoDeterministicConfig.Builder mergeContext​(FieldId value)
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
      • clearContext

        public CryptoDeterministicConfig.Builder clearContext()
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
      • getContextBuilder

        public FieldId.Builder getContextBuilder()
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
      • getContextOrBuilder

        public FieldIdOrBuilder getContextOrBuilder()
         A context may be used for higher security and maintaining
         referential integrity such that the same identifier in two different
         contexts will be given a distinct surrogate. The context is appended to
         plaintext value being encrypted. On decryption the provided context is
         validated against the value used during encryption. If a context was
         provided during encryption, same context must be provided during decryption
         as well.
        
         If the context is not set, plaintext would be used as is for encryption.
         If the context is set but:
        
         1. there is no record present when transforming a given value or
         2. the field is not present when transforming a given value,
        
         plaintext would be used as is for encryption.
        
         Note that case (1) is expected when an `InfoTypeTransformation` is
         applied to both structured and unstructured `ContentItem`s.
         
        .google.privacy.dlp.v2.FieldId context = 3;
        Specified by:
        getContextOrBuilder in interface CryptoDeterministicConfigOrBuilder
      • setUnknownFields

        public final CryptoDeterministicConfig.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>
      • mergeUnknownFields

        public final CryptoDeterministicConfig.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CryptoDeterministicConfig.Builder>