Skip to main content

Data minimization is a principle that encourages collecting and retaining only the data necessary for a specific purpose. This not only simplifies compliance with regulations like GDPR (General Data Protection Regulation) but also reduces the potential impact of a breach. For instance, an e-commerce site may choose not to store credit card data after processing, instead relying on third-party payment processors.

There are several ways to reduce the amount of real data kept, so in the event of a breach, the risk is minimized. Some examples are:

Hashing

Hashing is a one-way cryptographic transformation that converts data, such as a password or a personal identifier, into a fixed-length hash value. In data minimization, hashing allows organizations to store and process a non-reversible representation of sensitive data instead of the original. Since hashes cannot be feasibly converted back to the source value, the risk of exposure is greatly reduced if the data is compromised. This makes hashing especially valuable for verification tasks—such as confirming a password match—without needing to retain the actual data in plaintext. However, it is unsuitable if the original data must be retrieved, and it can be vulnerable to brute-force or dictionary attacks without the use of salting or stretching. In this context, they mean:

  • Salting is the process of adding a unique, random value to a piece of data—most commonly a password—before hashing it. This ensures that even identical inputs produce different hash values, making precomputed attacks such as rainbow tables ineffective. The salt is typically stored alongside the hash so that it can be applied again during verification.

  • Stretching is the practice of making the hashing process more computationally intensive, often by applying the hash function repeatedly or other more intenstive algorithms. By increasing the time and processing power required to generate each hash, stretching makes brute-force attacks far more time-consuming and costly for an attacker.

Tokenization

Tokenization replaces sensitive data with a randomly generated substitute called a token, which has no exploitable meaning or value on its own. The original data is stored securely in a separate, highly protected token vault, and only authorized systems can map tokens back to the actual data. In data minimization, tokenization allows operational systems to work with tokenized values for most business processes, reducing the number of locations where the real data is stored. This approach is particularly effective for payment card and personally identifiable information (PII) because it allows limited re-identification when strictly necessary, while keeping exposure points minimal.

Masking

Masking alters or obscures data so that it remains partially usable but conceals sensitive portions. For example, a masked credit card number might display only the last four digits, or a masked email address might show the first letter and domain but hide the rest. In data minimization, masking is used to protect information during testing, analytics, or customer service interactions where full visibility of the data is unnecessary. Unlike hashing or tokenization, masking often retains some real data elements, which may present residual risks if combined with other information, but it balances privacy with functional requirements.