
个人信息泄露检测工具,自托管SQLite方案,隐私优先最新版
官方版无广告12
更新日期:2026年8月27日分类标签:资源下载Privacy Protection 信息安全语言:中文平台:没限制
0 人已下载 手机查看
leak-check:4473 Stars 的个人信息泄露检测工具,自托管 SQLite 方案,隐私优先的数据泄露查询接口
一、项目概览
garinasset/leak-check 是一个个人信息泄露检测 API 和本地 CLI 工具——它允许你查询邮箱、手机号、用户名等标识符是否出现在已知数据泄露事件中。
项目提供两种使用方式:
- 托管 API:
https://leak-check.garinasset.com - 本地部署:SQLite 数据库 + Uvicorn 服务器,完全自托管
截至 2026 年 4 月:
- Stars:4,473 / Forks:475
- 许可证:MIT
- 技术栈:Python 3.12 + FastAPI/Uvicorn + SQLite
- 创建时间:2026 年 3 月,最后推送 2026 年 4 月
二、核心宣言:用户有权知道
README 中有三条明确的宣言:
- “不记录”查询记录
- “不提供”更多信息(只返回是否存在泄露,不返回完整数据)
- “别忘记”舆论监督
核心理念:你有权了解你的数据处于何种状态。
三、技术架构
本地部署方案
项目采用 Python 3.12 + Uvicorn ASGI 服务器 + SQLite 的轻量架构:
- 数据库层:SQLite(
db/leak-check.db),单文件,支持本地完全控制 - API 层:FastAPI/Uvicorn,暴露 GET/POST 端点
- 隐私层:所有输出经脱敏处理(
lib/masking.py),如手机号只显示前 3 位和后 4 位
数据库 Schema
两张核心表:
- source:泄露源信息(如 “example-dump-2025″)
- person:PII 字段(id/name/receiver/nickname/phone/address/car/email/qq/weibo/contact/company/source_id)
支持字段:手机号、邮箱、姓名、QQ、微博、地址、车牌号、公司等。
一条命令安装
curl -LsSf https://raw.githubusercontent.com/garinasset/leak-check/refs/heads/main/install.sh | bash
脚本会自动:克隆仓库 → 创建虚拟环境 → 安装依赖(uv)→ 启动 Uvicorn 服务(端口 8000)→ 可选 systemd 服务注册。
API 使用示例
import os, requests
API_KEY = os.environ["LEAK_CHECK_API_KEY"]
BASE_URL = "https://leak-check.garinasset.com"
def check_email(email: str) -> dict:
headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
response = requests.post(
f"{BASE_URL}/api/check",
json={"query": email, "type": "email"},
headers=headers, timeout=10
)
return response.json()
result = check_email("[email protected]")
print(result)
支持的查询类型:email / phone / username / ip
四、与 Have I Been Pwned 的对比
| 维度 | leak-check | Have I Been Pwned (HIBP) |
|---|---|---|
| 架构 | 联邦查询(或本地 SQLite) | 集中式数据库 |
| 隐私保护 | 脱敏输出,不返回完整数据 | k-anonymity(hash 前缀搜索) |
| 数据源 | 第三方 API + 用户自建 SQLite | 官方精选泄露库 |
| 自托管 | ✅ 完全本地部署 | ❌ 无自托管选项 |
| 数据范围 | 支持中国特定字段(QQ/微博/台湾身份证) | 以国际泄露为主 |
| 查询日志 | ❌ 不记录 | 未知 |
| 法律风险 | ⚠️ 取决于数据源合法性 | ✅ 合规经营多年 |
五、适用场景
推荐使用:
- 个人自查:检查自己的邮箱/手机号是否出现在公开泄露中
- 企业安全审计:批量检查员工账号是否泄露(合规前提)
- 安全研究者:研究泄露数据的分布和影响范围(学术用途)
- CI/CD 集成:在用户注册流程中加入泄露检测
需要注意:
- 数据源合法性:本项目不提供数据拷贝,用户需要自己获取泄露数据库
- 覆盖范围:检测结果完全依赖于数据库内容,不保证全面
- 时效性:新发生的泄露可能需要数周/数月才能进入数据库
六、隐私设计亮点
- 不记录查询日志:避免二次泄露风险
- 脱敏输出:手机号只显示前 3 位和后 4 位,邮箱只显示前缀首字母和域名
- 本地部署选项:可以在完全离线环境下运行,数据不离开本地
- 开源代码:MIT 许可证,可审计
七、法律与伦理边界
评测这类工具必须说清楚它的灰色地带:
数据源的合法性
- 项目本身不提供泄露数据,只提供查询接口
- 用户自行获取泄露数据库时,需要遵守当地法律(持有/传播泄露数据在很多国家违法)
- 查询第三方 API(如 Snusbase/DeHashed)可能违反其服务条款
适用法律
- 中国:《网络安全法》《个人信息保护法》对泄露数据持有和处理有严格限制
- 欧盟:GDPR 要求对泄露数据的处理需合法依据
- 美国:各州法律不同,部分州对泄露数据持有有刑事处罚
建议使用方式
- 仅查询自己的数据(自我保护目的)
- 企业使用时确保员工知情同意
- 不要持有/传播完整的泄露数据库
- 优先考虑 Have I Been Pwned 等合规服务
八、部署要求
- Python:3.12+
- 依赖:requests(主要),uvicorn,fastapi
- 数据库:SQLite(项目提供 example.db 作为示例)
- 硬件:单 50MB DB 文件可运行在树莓派 4 上,约 200 qps
- 系统:Linux/macOS/Windows,支持 systemd 服务注册
九、一句话总结
leak-check 是一个个人信息泄露检测工具,提供托管 API 和本地 SQLite 方案,支持邮箱/手机号/用户名/IP 查询,输出脱敏处理,不记录查询日志,MIT 开源。适合个人自查和企业安全审计,但需注意数据源合法性和当地法律边界。
GitHub 地址:https://github.com/garinasset/leak-check
托管 API:https://leak-check.garinasset.com
相关软件
暂无评论...