Skip to main content

What is Encryption?

Encryption is a reversible privacy protection method that transforms sensitive data into encrypted ciphertext using AES (Advanced Encryption Standard). The data can be decrypted later using the same encryption key. Example:

How It Works

  1. Detection: Blindfold identifies sensitive entities in your text
  2. Encryption: Each entity is encrypted using AES-256 encryption
  3. Key-Based: Encryption uses your provided key or tenant-specific default
  4. Reversible: Data can be decrypted using the same key

When to Use Encryption

Encryption is ideal when you need to:

1. Secure Storage of Sensitive Configuration

Encrypt API keys, tokens, and secrets before storing in databases.
Why this matters:
  • Secrets protected at rest
  • Can be decrypted when needed
  • Centralized key management

2. Protect Data in Transit

Encrypt sensitive data before sending through untrusted channels.

3. Temporary Data Protection

Protect data temporarily while it’s being processed.

4. Compliance Requirements

Meet encryption requirements for regulatory compliance (HIPAA, PCI-DSS, etc.).

When NOT to Use Encryption

Encryption is not suitable when:

1. You Don’t Need Reversibility

If you never need the original data, use Redaction or Hashing.

2. Users Need to See Partial Data

For UI display, use Masking instead.

3. Key Management is Too Complex

If managing encryption keys is challenging, use Tokenization.

Key Features

Reversible

Decrypt data using the encryption key

AES-256

Industry-standard encryption algorithm

Custom Keys

Use your own encryption keys

Secure

Strong encryption for sensitive data

Quick Start

Configuration Options

Encryption Key

Provide your own encryption key (minimum 16 characters):
Key Requirements:
  • Minimum 16 characters
  • Store securely (environment variables, key vault)
  • Use different keys for different environments (dev, prod)
  • Implement key rotation policy

Filter Entity Types

Only encrypt specific types of data:

Adjust Confidence Threshold

Control detection sensitivity:

Encryption Algorithm

Blindfold uses AES-256 encryption with the following process:
  1. Key Derivation: Your encryption key is derived using PBKDF2
  2. Encryption: Data is encrypted using Fernet (symmetric encryption)
  3. Secure: Industry-standard cryptography from cryptography library
Technical Details:
  • Algorithm: AES-256 in CBC mode
  • Key derivation: PBKDF2-HMAC-SHA256
  • Iterations: 100,000
  • Output: Base64-encoded ciphertext

Common Patterns

Encrypt Configuration Secrets

Secure Message Queue

Temporary Storage

Common Use Cases

Encrypt secrets before storing in databases:
Benefits: Secrets encrypted at rest, can be decrypted when needed
Exchange data securely with partners:
Benefits: Data protected in transit, only recipient can decrypt
Encrypt backups before storage:
Benefits: Backups protected, can restore when needed
Encrypt medical records for compliance:
Benefits: HIPAA encryption requirements met

Best Practices

1. Secure Key Management

Store encryption keys securely:

2. Different Keys for Different Purposes

Use separate keys for different use cases:

3. Implement Key Rotation

Regularly rotate encryption keys:

4. Document Encryption Usage

Track what’s encrypted and with which key:

Security Considerations

Important encryption considerations:
  • Key security: Encryption is only as secure as key management
  • Key loss: Lost keys mean permanently lost data
  • Key exposure: Exposed keys compromise all encrypted data
  • Algorithm: Uses AES-256, industry-standard encryption
  • Not obfuscation: Encryption is cryptographic protection, not hiding
  • Compliance: Check if AES-256 meets your compliance requirements

Learn More

Python SDK

Full Python SDK documentation

JavaScript SDK

Complete JavaScript guide

Java SDK

Sync and async Java client

REST API

HTTP API reference for /encrypt

Examples

Practical integration examples

Compare with Other Methods

Tokenization

Reversible with mapping (simpler key management)

Masking

Partial visibility (no encryption)

Redaction

Permanent removal (not reversible)

Hashing

One-way transformation (not reversible)