SubhransuNayak007/privacy-lens

GitHub: SubhransuNayak007/privacy-lens

PrivacyLens 是一款基于 Chrome MV3 的隐私智能扩展,通过可视化网络请求和 Gemini AI 解释,帮助用户实时检测、分析并拦截网站追踪行为。

Stars: 0 | Forks: 0

# PrivacyLens 👁️🛡️ ![PrivacyLens 界面](https://raw.githubusercontent.com/subhransunayak007/privacy-lens/main/public/icon48.png) PrivacyLens 是一款功能强大且设计精美的 Chrome 扩展程序,它可以揭开网站在后台所做操作的面纱。专为现代浏览器打造,它能够监控网络请求、拦截跨站追踪、分析浏览器指纹收集尝试,并通过 AI 驱动的功能来解释复杂的隐私威胁。 ## ✨ 功能 - **实时请求轨迹映射**:将网络请求的生命周期可视化,在精美的时间轴中高亮显示第一方、第三方以及已识别的追踪器请求。 - **追踪器情报**:集成强大的数据库(DuckDuckGo, Disconnect, EasyPrivacy),可检测并分类超过 46,000 个已知追踪器和 400 多种安全威胁。 - **AI 解释引擎**:使用 Google 的 Gemini AI 实时分析追踪器,并以通俗易懂的语言解释它们收集了*什么*数据以及*为什么*收集。 - **声明式网络请求拦截**:利用 Chrome 的 MV3 DeclarativeNetRequest API,在网络层瞬间拦截恶意或侵入性的追踪器。 - **高级 Cookie 仪表盘**:映射哪些域名设置了哪些 Cookie,监控它们的持久性和风险等级。 - **网站权限与指纹收集**:扫描页面的本地存储使用情况(IndexedDB, Service Workers, Caches)以及实时的权限请求(摄像头、位置等)。 - **高级 UI/UX**:使用 React、Tailwind CSS 和 Framer Motion 构建,提供感觉原生、轻快且令人愉悦的流畅体验。 ## 🛠 技术栈 - **前端:** React 18, Vite, Framer Motion, Tailwind CSS, Lucide React - **Extension API:** Manifest V3, Service Workers, declarativeNetRequest, chrome.storage.session - **后端/AI:** Google Gemini API(用于 AI 解释) - **数据库:** 通过自定义 Node 脚本,基于多个开源拦截列表构建的精选 JSON 数据库。 ## 🚀 快速开始 请按照以下步骤在您的本地机器上构建并安装 PrivacyLens。 ### 前置条件 - Node.js(v18 或更高版本) - npm 或 yarn - Google Chrome 浏览器 ### 安装与构建 1. **克隆代码仓库:** git clone https://github.com/yourusername/privacy-lens.git cd privacy-lens 2. **安装依赖项:** npm install 3. **构建追踪器数据库:** PrivacyLens 使用了一个庞大的追踪器数据库。在编译扩展之前,您必须构建优化的 JSON 文件: npm run build:db *这会从 DuckDuckGo、AdGuard、EasyPrivacy 和 URLhaus 获取最新列表,并将它们编译为 `public/trackerDatabase.json` 和 `public/securityDatabase.json`。* 4. **构建扩展:** npm run build *这将生成一个包含已编译 Chrome 扩展的 `dist` 文件夹。* ### 加载到 Chrome 中 1. 打开 Google Chrome 并访问 `chrome://extensions/`。 2. 启用 **开发者模式**(右上角的开关)。 3. 点击 **加载已解压的扩展程序**。 4. 选择 `privacy-lens` 目录下生成的 `dist` 文件夹。 5. 🎉 PrivacyLens 现已安装!将其固定到您的工具栏,并在任何网页上打开它。 ## 🧠 工作原理 1. **Content Script (`content.js`)**:监控页面级别的行为,例如表单交互、Canvas 指纹收集尝试以及 API 权限查询(`navigator.permissions`)。 2. **Background Worker (`background.js`)**:使用 `chrome.webRequest` 实时拦截并分析所有网络流量,将其与编译好的追踪器数据库进行匹配。它将此状态存储在内存中,并持久化到 `chrome.storage.session` 中,以增强 MV3 生命周期的弹性。 3. **拦截引擎 (`blockEngine.js`)**:将用户的拦截偏好转换为动态的 `declarativeNetRequest` 规则,在网络请求到达浏览器引擎之前就将其阻止。 4. **Popup UI (`App.jsx`)**:连接到 background worker 以获取遥测数据,并渲染实时仪表盘。 ## 🤝 贡献 欢迎提交贡献、问题和功能请求! 欢迎随时查看[问题页面](https://github.com/yourusername/privacy-lens/issues)。 ## 📄 许可证 本项目是开源的,基于 [MIT License](LICENSE) 提供。
标签:Cookie追踪, MITM代理, React, Syscalls, Tailwind CSS, 浏览器扩展, 网络安全, 自定义脚本, 隐私保护