Prepare and test your skills

Prepare and test your skills

Free sample question, answered and explained below. The Professional Data Engineer practice bank has 1,353 more like it. Try 10 free: instant score, no account.
An enterprise data architect is designing an automated de-identification pipeline using Sensitive Data Protection before ingesting a sensitive dataset into BigQuery. The source dataset contains four key fields with distinct compliance, system, and analytical constraints:
account_number: A fixed 10-digit numeric string that must be ingested by a legacy downstream application requiring strict 10-digit numeric format preservation, while also supporting two-way re-identification by security administrators.user_id: A customer identifier required for multi-table analytical joins across historical datasets; it requires two-way re-identification and maximum cryptographic security without character set or length preservation constraints.user_age: A quasi-identifier that must be generalized into discrete intervals (such as 20–29, 30–39) to reduce re-identification risk under k-anonymity requirements while retaining demographic utility.user_pin: A 4-digit secret that must never be reversible under any circumstances, but must maintain referential integrity across analytical queries.Which combination of Sensitive Data Protection transformational methods should the architect select for each respective column?
This configuration uses character masking for account numbers, deterministic encryption for user IDs, date shifting for age, and HMAC hashing for PINs.
account_number: Character masking is a lossy, one-way redaction transformation that replaces digits with characters like *. It cannot be reversed back to the original 10-digit account number.user_age: Date shifting (DateShiftConfig) is designed specifically for temporal attributes (dates and timestamps) to shift time values within a bounded random range while maintaining sequence. It is structurally inapplicable to integer age values.account_number only required partial obfuscation for display purposes (such as showing the last 4 digits) and the demographic column was a birth_date timestamp rather than a numerical integer.
This configuration applies format-preserving encryption and bucketing to account numbers and age, but swaps the techniques used for user_id and user_pin.
user_id: Cryptographic hashing using HMAC-SHA-256 produces a one-way token that is fundamentally non-reversible. The requirement explicitly states that user_id must support two-way re-identification by security administrators.user_pin: Deterministic encryption using AES-SIV is a two-way cryptographic operation that can be decrypted back into cleartext with the token encryption key. The requirement mandates that PIN values must never be reversible under any circumstances.user_id was required to be permanently pseudonymized without any re-identification mechanism, while user_pin needed to be recovered in cleartext by administrators.
This configuration inverts the cryptographic assignments for account_number and user_id, while substituting character masking for age and generic infoType replacement for PIN codes.
account_number: Deterministic encryption (AES-SIV) outputs base64-encoded strings with length expansion. Ingesting this into a legacy system expecting a strict 10-digit numeric string will trigger parsing crashes and database schema constraint failures.user_id: Format-preserving encryption lacks authentication and initialization vectors, making it cryptographically less robust than AES-SIV. FPE should only be used when strict legacy alphabet/length compatibility is mandatory.user_age: Character masking replaces digits with characters such as *, converting numeric distributions into unanalyzable static masks instead of preserving cohort ranges via bucketing.user_pin: InfoType replacement overwrites all PIN values with a generic string like [PIN], destroying referential integrity across analytical queries.The legacy system supported arbitrary variable-length base64 strings and analytical queries did not require cohort age groupings or distinct PIN group correlations.
This architecture pairs specialized cryptographic and generalization techniques in Sensitive Data Protection to balance data utility, schema compatibility, and privacy guarantees across diverse field requirements.
account_number (Format-Preserving Encryption with FFX): CryptoReplaceFfxFpeConfig encrypts values while preserving the exact 10-digit numeric character set and character length. This prevents schema violations and parsing exceptions in legacy downstream applications while enabling two-way re-identification with a Cloud KMS wrapped key.user_id (Deterministic Encryption with AES-SIV): CryptoDeterministicConfig uses AES in Synthetic Initialization Vector mode to yield identical ciphertext for identical inputs across the dataset. This preserves referential integrity for multi-table BigQuery analytical joins and allows authorized two-way re-identification, providing stronger security guarantees than FPE when length and alphabet preservation are not required.user_age (Fixed-Size Bucketing): FixedSizeBucketingConfig implements generalization by mapping individual continuous integer values into discrete ranges (such as bucket intervals of 10). This reduces uniqueness across demographic quasi-identifiers to satisfy k-anonymity while preserving analytical utility.user_pin (Cryptographic Hashing): CryptoHashConfig computes an HMAC-SHA-256 digest on the input. This is a one-way tokenization method that cannot be reversed or de-tokenized, satisfying non-reversibility while preserving referential integrity.This selection aligns each column with the exact transformational primitive that provides the required mathematical guarantees without unnecessary security compromises or breaking downstream schema dependencies.
Answer them yourself and get your score the moment you finish. No account needed.
Full access includes
Keep the momentum going with these hand-picked practice scenarios
Last updated Validated