PrivAgents 是一个注重隐私的框架,它展示了如何借助无信任的 MCP 服务器,实现自主代理(设备端和云端)对加密数据的安全处理,同时确保数据的完全保密性。该框架运用 隐私增强技术(Privacy-Enhancing Technologies,PETs) 中的 同态加密(Homomorphic Encryption,HE),能够在不解密的情况下对加密数据进行计算。
通过对话式代理界面,用户数据在设备上完成加密后,会被发送至安全处理单元(MCP),随后处理结果将以加密形式返回,并在本地进行解密。这一过程为医疗保健、个性化服务和金融等敏感领域构建了安全且智能的系统。
git clone https://github.com/UvrajSB/PrivRec.git
cd PrivRec
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# 启动 MCP 服务器(在终端中运行)
python mcp_server.py
Ollama Agent:在另一个终端中运行以下命令,使用 Ollama 进行推理。
python agent_ollama.py
OpenAI Agent:在另一个终端中运行以下命令,使用 OpenAI API 进行推理。
python agent_openai.py
设备端模型能保障隐私,但通常计算能力有限;云端模型具备强大的计算能力,却会引发信任问题。PrivAgents 结合了两者的优势,有效解决了这一问题:
用户可根据隐私限制和资源情况,选择合适的代理类型。
+------------------------+
| 用户设备 |
| (代理 + 加密) |
+------------------------+
| 加密输入
v
+------------------------+ ← 安全通道 →
| MCP 服务器 | (加密相似性计算)
+------------------------+
| 加密结果
v
+------------------------+
| 用户设备(解密) |
+------------------------+
PrivAgents/
│
├── agent/ # Ollama 和 OpenAI 代理实现及 PET 工具
├── mcp/ # 加密处理逻辑,用于相似性分析
├── utils/ # 上下文设置、加密助手
├── data/ # 示例输入和加密输出文件
└── .env # 端口和日志配置
如果你对构建安全且智能的系统感兴趣,并希望运用隐私增强技术(PET),欢迎参与项目贡献。无论是扩展代理逻辑、在新的加密工作流上进行实验,还是优化 MCP 层,都非常期待你的加入。请 Fork 该仓库并开始参与。