Format-Preserving Encryption (FPE)

Encrypt data without changing its format

Challenges

The purpose of most encryption tools and techniques is to mask and then decrypt data. Unfortunately, their processes result in a ciphertext that is not human-readable and is often longer than the original field value.

The challenge lies in preserving the original format of the data in its protected state, so that it appears genuine, retains referential integrity checks, and can be used for testing.

When it comes to data privacy, both internal and external threats must be considered, including those against critical database and application resources. However, many protective mechanisms require application retrofitting or add complexity that delays or halts deployment. Format-preserving encryption overcomes these issues. It's an exciting step towards improved, simpler data privacy and regulatory compliance.

Trent Henry – Burton Group

Solutions

IRI's software products for Data masking Encrypt Personal Identifiable Information (PII) in databases and files using advanced Format-Preserving Encryption (FPE) technology (AES-128 and AES-256). Enhance your data column by column (or field by field) without altering the format or appearance of the original values.

With IRI FieldShield (for databases and flat files), IRI CellShield (for Excel), IRI DarkShield (for unstructured files) or IRI Voracity (for DBs, Files, HDFS, etc.) you can apply ad hoc or global FPE functions in a rule-based manner to:

  • Preserve and maintain the original data formats.
  • Maintaining referential integrity
  • Eliminate the need for multiple masking and lookup tables.
  • Eliminate formatting changes, database or application schemas.
  • Encrypting Primary and Foreign Keys
  • Provision of reversible data masking
Encrypt, for example, a 16-digit credit card number and display another 16-digit number in the same format:
Davor
Afterwards

Frequently Asked Questions (FAQ)

Format-Preserving Encryption (FPE) is a method for encrypting sensitive data while retaining its original format—for example, a 16-digit credit card number remains a 16-digit string. This makes it possible to keep encrypted data compatible with existing database schemas and applications.
Unlike traditional encryption methods, which produce unreadable ciphertext of varying lengths, FPE ensures that the encrypted output matches the format of the original input. This avoids issues with storage limits, validation rules, or changes to the application schema.
FPE is ideal for protecting personally identifiable information (PII) in environments where format, length, or schema constraints must be met. Typical examples include credit card numbers, social security numbers, phone numbers, and primary keys.
By preserving format and values across linked fields, FPE allows encrypted data to maintain referential integrity between primary and foreign keys. This enables masked datasets to still be meaningfully joined or queried.
Yes. IRI supports FPE for structured data (e.g., relational databases, flat files), semi-structured data (e.g., JSON, XML, NoSQL DBs, EDI files), and unstructured data (e.g., documents and images) via FieldShield, CellShield, DarkShield, and/or Voracity.
IRI uses the NIST-certified algorithms AES-128 and AES-256 for format-preserving encryption, thereby ensuring a high level of security while simultaneously complying with regulatory and compliance requirements.
Absolutely. FPE is often used to mask PANs (Primary Account Numbers) because the 16-digit numeric structure is preserved – making the masked data appear valid for testing while remaining secure.
Yes. FPE is a reversible data masking technique – authorized users can decrypt the values with the correct key and library. This is useful for controlled access and secure data recovery.
No. One of the main advantages of FPE is that no changes to your database or application schema are necessary. Encrypted values retain the same length and format as the original data.
IRI offers FPE functions that can be applied rule-based or ad hoc within the Workbench IDE. Users can configure encryption at the column or field level, ensuring consistency and traceability across all data sources.