FREEDOM251

Freedom251 › Data Masking Software

SDSA

Paid APILinuxSelf-hostedWeb

Visit SDSA Alternatives

SDSA's own site

What SDSA is

SDSA is a self-hostable web app for sanitizing tabular data before it leaves a trusted environment. It accepts CSV, delimited TXT, single-table SQL INSERT dumps, JSON records, and XML records through a browser interface or REST API. SDSA infers a schema and detects fields that may contain personal or sensitive information, including email, phone, card number, government ID, date of birth, name, and address. You can transform fields through masking, HMAC hashing, tokenization, redaction, dropping, numeric binning, date or string truncation, and bounded Laplace noise. For privacy controls, it can enforce k-anonymity over selected quasi-identifiers and measure or enforce l-diversity for sensitive cleartext attributes. Outputs include sanitized CSV and JSON and Markdown privacy reports with before-and-after utility summaries. A headless command-line pipeline supports CI/CD and data pipelines. SDSA is free and open source under the AGPL-3.0 license, with Python package and Docker installation options, including a production Compose profile. Uploaded data and generated outputs are kept in an in-memory session store for a default 30 minutes. SDSA does not provide dataset-level differential privacy, and auxiliary-data linkage attacks may still succeed.

Who it suits

SDSA suits teams that need to sanitize tabular data before sharing it for testing, QA, analytics, or external processing. Its browser, API, and command-line interfaces support both manual work and automated data pipelines, with privacy reports for review.

What it does well

  • Accepts CSV, delimited TXT, SQL INSERT, JSON, and XML records.
  • Provides browser, REST API, and headless command-line interfaces.
  • Offers masking, hashing, tokenization, redaction, and other transformations.
  • Can enforce k-anonymity and measure or enforce l-diversity.
  • Exports sanitized CSV with JSON and Markdown privacy reports.
  • Free and open source under AGPL-3.0.

What to know first

  • Does not provide dataset-level differential privacy.
  • Auxiliary-data linkage attacks may still succeed.
  • In-memory sessions have a 30-minute default lifetime.
  • Multiple workers or replicas can break upload-to-download flow with in-memory sessions.

Limits

Uploaded data and generated outputs remain in an in-memory session store for a default 30 minutes. While that storage is in use, deployments should run one application process because multiple workers or replicas can break the upload-to-download flow.

Getting started

  1. Open the SDSA website on GitHub.
  2. Install SDSA as a Python package or deploy it with Docker.
  3. For production Docker deployment, use the documented Compose profile with nginx.
  4. Run one application process while sessions use in-memory storage.
  5. Process records through the browser UI, REST API, or headless command-line pipeline.

Verdict

Choose SDSA if you need a self-hosted tool for sanitizing structured records, with browser, API, and command-line workflows plus reviewable privacy reports. Look elsewhere if your requirement is dataset-level differential privacy or protection that rules out auxiliary-data linkage attacks.

Questions

How much does SDSA cost?

SDSA is free and open source.

What license does SDSA use?

SDSA is licensed under AGPL-3.0.

What data formats can it process?

It accepts CSV, delimited TXT, single-table SQL INSERT dumps, JSON records, and XML records.

How can I use SDSA?

It provides a browser UI, REST API, and headless command-line pipeline. The maker documents Python package and Docker deployment.

Does SDSA provide differential privacy?

It does not provide dataset-level differential privacy. The maker also says auxiliary-data linkage attacks may still succeed.

How long are session files kept?

Uploaded data and generated outputs are stored in memory for a default 30 minutes.

Facts from SDSA's own pages

Data handling
Uploaded data, parsed dataframes, HMAC keys, and generated outputs stay in process memory and expire after the configured session TTL, which defaults to 30 minutes. · github.com, 9 Oct 2026
Deployment
The maker documents installation as a Python package or Docker deployment, including a production Docker Compose profile with nginx TLS termination. · github.com, 9 Oct 2026
Deployment constraint
Deployments should run one SDSA application process unless the in-memory session store is replaced with shared storage, because multiple workers or replicas break the upload-to-download flow. · github.com, 8 Oct 2026
Deployment limit
The maker says to run one SDSA application process per deployment while sessions use in-memory storage, because multiple workers or replicas can break the upload-to-download flow. · github.com, 9 Oct 2026
Deployment security
The production Compose profile uses nginx for TLS termination, upload limits, security headers, and basic rate limits. · github.com, 8 Oct 2026
Input formats
It accepts CSV, delimited TXT, single-table SQL INSERT dumps, JSON records, and XML records through its browser UI or REST API. · github.com, 9 Oct 2026
Intended users
The maker describes SDSA for enterprise data-sharing workflows such as testing, QA, analytics, and external processing, with explicit policies and reviewable reports. · github.com, 9 Oct 2026
Interfaces
Users can process data through a browser UI, REST API, or headless command-line pipeline for CI/CD and data pipelines. · github.com, 8 Oct 2026
License
The repository states SDSA is licensed under AGPL-3.0. · github.com, 9 Oct 2026
PII detection
It infers schema and detects likely sensitive fields such as email, phone, card number, government ID, date of birth, name, and address. · github.com, 8 Oct 2026
Privacy controls
SDSA enforces k-anonymity over operator-selected quasi-identifiers and can measure or enforce l-diversity for sensitive cleartext attributes. · github.com, 9 Oct 2026
Privacy limitation
SDSA does not claim dataset-level (epsilon, delta) differential privacy and says auxiliary-data linkage attacks may still succeed. · github.com, 9 Oct 2026
Purpose
SDSA is a self-hostable web app for sanitizing tabular data before it leaves a trusted environment. · github.com, 8 Oct 2026
Reports
Each processed release includes sanitized data and JSON and Markdown privacy reports with before-and-after utility summaries. · github.com, 9 Oct 2026
Security limits
SDSA says it does not provide dataset-level differential privacy or guarantee that auxiliary-data linkage attacks are impossible. · github.com, 8 Oct 2026
Supported data
It accepts CSV, delimited TXT, single-table SQL INSERT dumps, JSON records, and XML records. · github.com, 8 Oct 2026
Transformations
Available field actions include masking, HMAC hashing, tokenization, redaction, dropping, numeric binning, date or string truncation, and bounded Laplace noise. · github.com, 9 Oct 2026
What it does
SDSA is a self-hostable web app for sanitizing tabular data before it leaves a trusted environment, with privacy reports. · github.com, 9 Oct 2026
Workflow integrations
SDSA provides a REST API and a headless command-line pipeline for CI/CD and data pipelines. · github.com, 9 Oct 2026

Where SDSA stands on Freedom251

Look at these too