How to implement per-user crypto-deletion in BigQuery?

You want to encrypt the customer data stored in BigQuery. You need to implement per-user crypto-deletion on data stored in your tables. You want to adopt native features in Google Cloud to avoid custom solutions. What should you do?

  1. Implement Authenticated Encryption with Associated Data (AEAD) BigQuery functions while storing your data in BigQuery. Source Reference Answer
  2. Create a customer-managed encryption key (CMEK) in Cloud KMS. Associate the key to the table while creating the table.
  3. Create a customer-managed encryption key (CMEK) in Cloud KMS. Use the key to encrypt data before storing in BigQuery.
  4. Encrypt your data during ingestion by using a cryptographic library supported by your ETL pipeline.

Community Votes

A
100%

100% of anonymous learners picked answer A. Votes are pick records left by other test-takers — they are not the verified answer.

Community Insight

The exam tests the distinction between table-level encryption (CMEK) and column-level encryption (AEAD), focusing on how AEAD enables crypto-deletion by mapping keys to individual users rather than the entire table.

To achieve per-user crypto-deletion natively in BigQuery, use AEAD (Authenticated Encryption with Associated Data) functions to encrypt data with user-specific keys. This allows data to be rendered unreadable by simply revoking or deleting the specific user's key.

Choosing Customer-Managed Encryption Keys (CMEK) (Option B) is a frequent error because CMEK encrypts the whole table, making it impossible to delete data for a single user without destroying everyone's data.

Community Discussion (3 comments)

raaad 👍 9 Selected: A
  • AEAD cryptographic functions in BigQuery allow for encryption and decryption of data at the column level. - You can encrypt specific data fields using a unique key per user and manage these keys outside of BigQuery (for example, in your application or using a key management system). - By "deleting" or revoking access to the key for a specific user, you effectively make their data unreadable, achieving crypto-deletion. - This method provides fine-grained encryption control but requires careful key management and integration with your applications.
JyoGCP 👍 3 Selected: A
https://cloud.google.com/bigquery/docs/aead-encryption-concepts https://cloud.google.com/bigquery/docs/reference/standard-sql/aead_encryption_functions
scaenruy 👍 2 Selected: A
A. Implement Authenticated Encryption with Associated Data (AEAD) BigQuery functions while storing your data in BigQuery.

Comments & Corrections

No comments yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Expert Analysis

Why the Answer Is Correct

Option A is correct because BigQuery's native AEAD functions allow for column-level encryption using specific keys. By assigning a unique encryption key to each user, you can satisfy deletion requests (crypto-deletion) by simply destroying or revoking that user's key, rendering their data permanently unreadable without deleting the underlying rows.

Why the Other Options Are Wrong

Option B is incorrect because CMEK operates at the table or storage level; destroying a CMEK key would make the entire table unreadable for all users, not just one. Option C implies application-side encryption before storage, which moves away from native BigQuery processing and requires complex external key management. Option D is incorrect because using a custom cryptographic library in an ETL pipeline violates the requirement to adopt native Google Cloud features.

Community Comment Notes

Community consensus strongly supports Option A, highlighting that AEAD functions allow keys to be managed outside of BigQuery. Commenters note that this separation enables the specific workflow of "crypto-deletion" where access revocation effectively deletes the data. The comments also provide direct links to official documentation confirming AEAD is the intended solution for this scenario.

Official Reference

Exam Strategy

When a question asks for "crypto-deletion" or "per-user" encryption, immediately look for AEAD functions. Remember that CMEK is for infrastructure compliance and control, not for granular, user-level data erasure.

Related Analysis

← Back to PDE Study Guide