Datatape
Security

Encryption

How Datatape encrypts credentials at rest and in transit, and what data is stored.

Encryption

Datatape encrypts sensitive data at every layer — at rest in the database, in transit between services, and when storing API key material.

Credentials at rest

Database connection credentials (host, port, username, password) are encrypted before being stored using Fernet symmetric encryption:

PropertyDetail
AlgorithmAES-128-CBC
IntegrityHMAC-SHA256
Key managementServer-side encryption key, rotatable
EncodingBase64 URL-safe

Fernet guarantees that encrypted data cannot be read or tampered with without the encryption key. Each credential is encrypted as a single Fernet token.

Credentials are never returned in API responses, never logged, never included in error messages, and never accessible to AI agents calling your MCP tools.

Data in transit

All communication is encrypted with TLS:

ConnectionEncryption
Browser to DatatapeTLS 1.2+ (HTTPS)
AI client to MCP endpointTLS 1.2+ (HTTPS)
Datatape to your databaseSSL/TLS (configurable per source)
Internal service communicationTLS 1.2+

Agent API key storage

Agent API keys are never stored in plain text. When you create an agent, a key is generated:

  1. The full key (dt_live_...) is shown to you once at agent creation time
  2. A SHA-256 hash of the key is stored in the database
  3. A hint (first 3 + last 4 characters) is stored for identification

When a request arrives with an agent API key, Datatape hashes the provided key and compares it against stored hashes. The original key cannot be recovered from the hash.

Stored:    sha256(dt_live_a1b2...o5p6) → 9f86d0...
Hint:      dt_...o5p6
Raw key:   Not stored anywhere
Agents list showing each agent's API key hint (e.g. dt_...PgNw)

What Datatape stores

DataStoredEncrypted
Database credentialsYesYes (Fernet)
Agent API keysHash onlyYes (SHA-256)
Agent API key hintsYesNo (non-sensitive)
SQL templatesYesNo
Query resultsNo (not persisted)N/A
User emails and namesYesNo
Audit log entriesYesNo

Query results are streamed directly to the calling AI client and are not stored by Datatape. They exist only for the duration of the request.

What Datatape does not store

  • Raw agent API keys (only the SHA-256 hash)
  • Database passwords in plain text (only Fernet-encrypted)
  • Query result data
  • AI conversation content
Source edit form with the Password field shown as 'Password (leave empty to keep current)'

On this page