Dataset privacy-risk scanner
A privacy-risk analysis system for detecting direct identifiers, risky attribute combinations, rare records, and disclosure risks in structured datasets before sharing.
Project definition
Problem statement
Removing names and phone numbers does not necessarily make a dataset safe. Combinations such as age, location, occupation, dates, or rare categories can isolate a record and permit re-identification when linked with other information.
The engineering problem is to detect multiple disclosure risks, explain which fields create them, compare mitigation options, and prevent raw personal records from appearing in logs or exported results.
Project objectives
- Detect selected direct identifiers and identify possible quasi-identifiers and sensitive attributes.
- Measure uniqueness, k-anonymity, l-diversity, rarity, and missing-value patterns under documented assumptions.
- Run a controlled linkage simulation using synthetic reference data.
- Compare generalisation, suppression, removal, and aggregation against data utility.
- Produce a risk summary that excludes raw personal values and records all assumptions.
System design
System modules
Secure dataset intake
Validates local files, profiles schemas in an isolated job, and applies retention and deletion settings.
Identifier detector
Uses field names, formats, patterns, and sampled values to suggest direct, quasi, and sensitive attributes for review.
Privacy metric engine
Calculates equivalence classes, uniqueness, k-anonymity, l-diversity, rarity, and coverage metrics.
Linkage simulator
Measures matching risk against a safe synthetic reference dataset under selected field combinations.
Mitigation workbench
Applies selected transformations and compares privacy metrics, row retention, and analytical utility.
Methodology
System workflow
- 01Load safe dataset
The student uploads a prepared synthetic dataset and selects retention and analysis settings.
- 02Review schema
The scanner proposes attribute roles and the student confirms the analysis assumptions.
- 03Measure risk
Privacy metrics and rare combinations are calculated without exposing raw records in the dashboard.
- 04Simulate linkage
Selected quasi-identifiers are tested against a synthetic reference table to estimate matchability.
- 05Compare mitigation
Transformations are applied and privacy improvement is compared with retained data utility.
Demonstration scenario
A synthetic student dataset is uploaded after names have already been removed. The scanner shows that age, postcode, and programme uniquely identify several rows. A synthetic linkage test confirms the risk, then postcode generalisation and rare-row suppression improve the privacy metrics while the dashboard shows the resulting utility change.
Engineering
Technical architecture
- Web application
- Nuxt and Vue for schema review, metric exploration, risk explanations, mitigation comparison, and safe export.
- Analysis API
- FastAPI for file jobs, schema decisions, privacy metrics, linkage simulations, transformations, and summaries.
- Metadata layer
- PostgreSQL for job metadata, schema roles, configurations, aggregate metrics, and audit events, not raw dataset rows.
- Privacy engine
- Python, Pandas, and identifier-detection adapters for grouping, rarity, linkage, transformation, and utility measures.
- Data controls
- Local processing, encryption in transit, short-lived files, redacted logs, aggregate output, and explicit deletion.
Testing
Evaluation
Evaluation measures
- Precision and recall for prepared direct-identifier and quasi-identifier cases
- Correctness of privacy metrics against manually calculated examples
- Linkage-risk detection across prepared synthetic scenarios
- Privacy improvement and utility loss after each mitigation
- Absence of raw sensitive values from logs and exported summaries
- Processing time and memory use across prepared dataset sizes
System boundaries
- Demonstrations use synthetic, public, or explicitly permitted datasets only.
- A low measured risk does not prove that a dataset is anonymous under every external data source or attack model.
- The scanner supports privacy review and does not provide legal or regulatory certification.
- Raw records are processed locally for the job and are not included in exported summaries.
Included
- 01Dataset intake, risk review, and mitigation dashboard
- 02Identifier detection, privacy-metric, and linkage-simulation modules
- 03Generalisation, suppression, and before-and-after comparison tools
- 04Prepared synthetic datasets, risk cases, and evaluation results
- 05Complete source code in a private GitHub repository
- 06Complete project documentation with synopsis, abstract, methodology, privacy diagrams, test results, screenshots, and conclusion
- 07Setup and usage guide
Project record
No buyer information is collected on this page.
- Permanent project ID
- GP-CY-0RMFOKB
- Catalogued
- 21 Aug 2026
- Completed
- Pending
- Verified
- Pending
- Demonstration
- Added when ready
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.