tina77fritz/privacy-preserving-data-systems
GitHub: tina77fritz/privacy-preserving-data-systems
提供系统级隐私保护数据使用框架,解决数据驱动服务中的隐私风险与合规挑战。
Stars: 91 | Forks: 18
# 隐私保护数据系统
为隐私保护数据处理设计的系统级架构框架,能够在最小化依赖可识别个人信息的前提下,实现合法的数据使用和数据分析效用。
## 上下文与目标
数据驱动的服务日益支撑着医疗、电子商务、通信、金融科技等关键领域。因为这些系统依赖大规模数据来提供功能与可靠性,它们通常会收集和使用大量个人信息。这带来了实质性的隐私风险:数据泄露和未经授权的披露可能导致身份盗窃和欺诈,暴露敏感属性和位置模式,侵蚀公众对关键数字服务的信任,同时随着隐私和数据安全要求的不断发展,合规与运营风险也在增加。
尽管政府已出台强有力的隐私法规以保护公众权利,但法律和政策控制往往是被动的,且可能落后于现代数据实践的速度和复杂性。因此,有效的隐私保护不能仅依赖事后合规流程。它必须被工程化实现——直接嵌入系统设计——以便在默认情况下最小化可识别信息的暴露,同时合法且负责任地使用数据。
隐私保护系统提供了这种技术能力。通过从个体级数据依赖转向聚合和隐私保护的信号、对数据处理和共享施加基于风险的约束、并实现可审计的跨高吞吐量管道的统一控制,这些系统在降低系统性隐私风险的同时,保持了数据驱动服务的效用和可靠性。
## 本仓库的目的
本仓库聚焦于系统层面的视角——如何将隐私保护实现为一种内置的、决策驱动的能力,以支持可信赖的数据使用和数据基础设施的持续稳定性。
而非仅聚焦于算法优化,本仓库描述了用于决定数据在何种粒度、以何种方式被处理或发布的系统级决策逻辑。
## 仓库结构
本仓库被组织为一个**分层系统规范**,其中每一篇文档
在前一篇档的基础上构建,并引入严格限定的职责。
- [00 概述](docs/00_overview.md)
高层级架构、设计原则与系统目标。
- [01 问题陈述](docs/01_problem_statement.md)
形式化隐私导致的数据退化问题,并论证结构感知数据使用的必要性。
- [02 威胁模型与信任边界](docs/02_threat_model_trust_boundaries.md)
定义受保护的资产、对手能力、信任边界(本地 / 混洗 / 中心化),
并**正式将威胁类别映射到可量化的隐私风险维度(LPS 子分数)**。
该文档将全部隐私推理建立在明确的威胁模型之上。
- [06 LPS 评分规范](docs/06_lps_scoring_spec.md)
定义本地差分隐私评分(LPS),包括链接性、唯一性、可推断性以及策略惩罚,作为从威胁模型导出的量化代理。
- [07 粒度选择规范](docs/07_granularity_selection_spec.md)
规定如何通过优化隐私可行区域内的效用来选择数据粒度(项目 / 聚类 / 聚合)。
- [08 路由执行规范](docs/08_routing_execution_spec.md)
定义运行时对路由决策的强制执行,并确保在信号摄取期间不做出隐私决策。
- [09 数据溯源与信任边界强制执行](docs/09_data_lineage_and_trust_boundary.md)
形式化数据如何跨信任边界流动并强制执行边界不变性。
- [10 重新评估与生命周期管理](docs/10_re_evaluation_and_lifecycle_spec.md)
定义特征生命周期状态、重新评估触发器、降级规则以及治理控制,以确保稳定性和可审计性。
### 阅读指南
- **安全 / 隐私评审者**应按 `02 → 06 → 09` 的顺序阅读。
- **基础设施 / 数据平台工程师**应重点关注 `07 → 08 → 10`。
- **研究 / 机器学习读者**应阅读 `01 → 06 → 07` 以了解核心方法。
Together, these documents specify a complete **privacy-aware data usage framework**
that is threat-grounded, structurally enforced, and auditable by design.
## 快速入门
### 先决条件
- Python **3.10+**
- `pip`(建议在虚拟环境中运行)
### 安装
**选项 A — 安装固定版本(推荐用于可重现性)**
```
pip install "ppds @ git+https://github.com/tina77fritz/privacy-preserving-data-systems@v0.1.0"
```
**选项 B — 从 `main` 分支安装最新版本(用于开发)**
```
pip install "ppds @ git+https://github.com/tina77fritz/privacy-preserving-data-systems@main"
```
验证:
```
ppds --version
```
1. 验证配置(故障封闭)
验证你的策略与特征规范。无效的配置必须硬性失败,并返回结构化原因(非零退出码)。
```
ppds validate \
--policy examples/configs/policy_min.yaml \
--features examples/configs/features_min.yaml \
--format json
```
**预期行为**
- ✅ 验证通过时退出码为 `0`
- ❌ 验证失败时返回非零退出码 + JSON 错误负载(例如权重和不等于 1、阈值越界、缺少必需字段)
### 2) 生成可审计的计划(`plan.json`)
生成一个确定且可审计的计划,捕获决策、约束与理由。
```
ppds plan \
--policy examples/configs/policy_min.yaml \
--features examples/configs/features_min.yaml \
--out plan.json
```
`plan.json` 设计目标如下:
- **可审计:** 包含结构化理由(分数、阈值、规则命中)
- **确定性:** 包含指纹以实现可重现运行
- **集成就绪:** 包含规划器与仓库友好的约束
**示例(示意性):**
```
{
"schema_version": 1,
"fingerprint": "sha256:…",
"decision": {
"route": "local_only",
"granularity": "coarse"
},
"constraints": [
{
"type": "deny_join",
"key": "user_id"
}
],
"reasons": {
"lps": {
"total": 0.83,
"components": {
"linkability": 0.25,
"uniqueness": 0.30,
"inferability": 0.28
},
"thresholds_hit": ["stable_join_key", "high_sparsity"]
},
"policy": {
"fail_closed": true,
"rejection_reasons": []
}
}
}
```
## 3) 输出 SQL 兼容结果
将计划转换为 SQL 片段以集成到数据仓库。
```
ppds emit-sql \
--plan plan.json \
--dialect spark \
--out query.sql
```
## 4) 解释(可选):人类可读的审计报告
```
ppds explain --plan plan.json --format md > audit_report.md
```
该报告提供评审者友好的摘要,包括:
- 为何某个特征被路由 / 拒绝
- 触发了哪些阈值
- LPS 组件如何贡献于最终决策
## 可重现性 / 引用
要在技术评估中重现规划行为,请始终引用:
1. 发行标签(例如 `v0.1.0`)和
2. 生成计划的指纹
**示例:**
```
python -c "import ppds; print(ppds.__version__)"
ppds plan --policy policy.yaml --features features.yaml --out plan.json
jq -r .fingerprint plan.json
```
### 如何引用本发行版
如果您在技术评估、原型设计或集成实验中使用 PPDS,请引用确切的发行标签以确保可重现性:
- **仓库:** `privacy-preserving-data-systems`
- **发行标签:** `v0.1.0`
- **URL:** https://github.com/tina77fritz/privacy-preserving-data-systems/releases/tag/v0.1.0
为获得最佳可重现性,也请记录由以下命令产生的计划指纹:
```
ppds plan --policy policy.yaml --features features.yaml --out plan.json
jq -r .fingerprint plan.json
```
### 构建徽章
[](https://github.com/tina77fritz/privacy-preserving-data-systems/actions/workflows/ci.yml)
标签:GDPR, 医疗保健, 匿名化, 可信计算, 可审计性, 合规设计, 在线服务, 多线程, 工程约束, 差分隐私, 数据最小化, 数据治理, 数据聚合, 数据脱敏, 数据隐私, 框架设计, 法律合规, 法规遵从, 电子商务, 系统级设计, 网络安全, 规模化数据处理, 身份保护, 逆向工具, 通信安全, 金融科技, 隐私保护, 隐私保护架构, 隐私增强技术, 隐私工程, 高可用数据管道