隐私与安全

FlowPick 零数据收集承诺——不追踪、不上传、不收集任何用户信息。所有处理完全在您的设备本地完成。

FlowPick 以零数据收集为核心原则构建。我们坚信,一款下载工具没有任何理由收集用户数据——您的浏览记录、下载内容、个人偏好,全部留在您自己的设备上。


我们的承诺

在您使用 FlowPick 的整个过程中,以下事情永远不会发生

我们不做的事为什么重要
收集个人信息我们不需要知道您是谁——姓名、邮箱、IP 地址一律不收集
追踪浏览历史您访问了哪些网站、看了什么视频,我们不知道也不想知道
上传下载记录您下载了什么文件、从哪个网站下载,这些信息从未离开您的设备
使用分析/统计脚本没有 Google Analytics、没有埋点、没有任何遥测代码
嵌入第三方 SDK没有广告 SDK、没有数据统计 SDK、没有任何外部依赖
向服务器发送数据FlowPick 没有后端服务器,所有功能完全离线运行
出售或共享数据我们没有数据可出售,也没有数据可共享
您可以亲自验证。 FlowPick 完全开源,代码托管在 GitHub 上。您还可以打开浏览器开发者工具(F12)→ Network 标签页,在使用 FlowPick 时观察——您不会看到任何向外部服务器发送的请求。关于如何自行构建和验证扩展,请参阅 贡献指南 — 开发环境搭建

数据流向

FlowPick 的数据处理完全在您的设备上闭环,没有任何数据离开您的浏览器:

┌─────────────────────────────────────────────────────┐
│                    您的浏览器                         │
│                                                      │
│  网页请求 ──→ webRequest 监听 ──→ 媒体检测(内存)     │
│                                          │            │
│                                          ▼            │
│                              清单解析 + 分片下载(内存) │
│                                          │            │
│                                          ▼            │
│                         FFmpeg WASM 合并(本地计算)    │
│                                          │            │
│                                          ▼            │
│                              文件写入(您的硬盘)       │
│                                                      │
│  设置偏好 ──→ 浏览器 localStorage(本地)              │
│                                                      │
│  ═══════════════════════════════════════════════     │
│  数据边界:没有任何数据穿过这条线                       │
│  ═══════════════════════════════════════════════     │
│                                                      │
│  外部服务器:❌ 不存在,FlowPick 没有后端               │
└─────────────────────────────────────────────────────┘
关于数据流向中涉及的下载引擎架构(分片下载、FFmpeg WASM 合并、文件写入),请参阅 下载引擎架构。关于 FFmpeg WASM 的本地计算原理,请参阅 格式转换 — FFmpeg WASM 引擎

本地处理详解

FlowPick 的所有功能都在您的设备上完成,不依赖任何远程服务:

操作处理位置使用的技术是否联网
媒体检测浏览器内存webRequest API否(仅监听本地请求)
HLS 清单解析浏览器内存m3u8-parser 库
DASH 清单解析浏览器内存mpd-parser 库
分片下载浏览器内存 → 硬盘Fetch API + Streams API是(下载目标文件)
分片合并浏览器 WebAssemblyFFmpeg WASM
格式转换浏览器 WebAssemblyFFmpeg WASM
文件保存您的硬盘File System Access API / StreamSaver
设置存储浏览器 localStorageWeb Storage API
主题切换浏览器 localStorageCSS 变量
"分片下载"是唯一涉及网络的操作——它从您正在访问的网站下载媒体分片,这与浏览器正常加载网页的行为一致。FlowPick 不会将下载请求发送到任何第三方服务器。关于分片下载的并发控制和重试机制,请参阅 下载引擎架构 — 分片下载

权限说明

FlowPick 仅请求 4 项浏览器权限,每一项都有明确且不可替代的用途:

activeTab — 访问当前标签页

项目说明
用途读取当前标签页的 URL 和 DOM,检测页面中的媒体资源
激活时机仅在您点击 FlowPick 工具栏图标时激活
后台运行否——扩展不会在后台持续运行
数据存储不存储任何标签页数据
数据传输不向任何地方传输数据

webRequest — 监控网络请求

项目说明
用途监听网络请求的响应头,根据 Content-Type 识别媒体资源
激活时机仅在您激活的标签页上生效
监听范围仅匹配媒体 MIME 类型的请求
数据存储不存储任何请求或响应数据
数据传输不向任何地方传输数据

downloads — 文件下载

项目说明
用途将合并完成的媒体文件保存到您的下载目录
激活时机仅在您主动点击"下载"按钮时触发
数据存储文件直接写入您指定的目录
数据传输不向任何地方传输数据

storage — 本地存储

项目说明
用途保存您的偏好设置(主题、过滤条件、并发数等)
激活时机当您修改设置时自动保存
存储位置浏览器 localStorage(您的设备上)
数据传输不向任何地方传输数据
关于各项权限在 Manifest V3 中的声明方式和限制,请参阅 已知限制 — Manifest V3 限制。关于扩展安装时的权限确认流程,请参阅 安装指南 — 权限说明

本地存储的数据

FlowPick 在您的设备上仅存储以下数据,全部位于浏览器的本地存储中:

数据类型具体内容存储位置生命周期
用户偏好主题(浅色/深色)、语言localStorage永久(手动清除前)
过滤设置最小文件大小、格式过滤、尺寸过滤localStorage永久(手动清除前)
下载配置并发线程数、输出格式、保存目录localStorage永久(手动清除前)
检测缓存当前标签页检测到的媒体列表浏览器内存关闭标签页时自动清除

清除所有数据

您可以随时一键清除 FlowPick 存储的所有本地数据:

  1. 右键点击 FlowPick 图标 → 选项(或点击图标 → 设置齿轮)
  2. 找到 清除所有数据 按钮
  3. 点击确认

也可以通过浏览器的扩展管理页面手动清除:

  • Chrome:chrome://extensions/ → FlowPick → 详情 → 清除数据
  • Edge:edge://extensions/ → FlowPick → 详情 → 清除数据
关于各项配置项的具体含义和推荐设置,请参阅 配置参考

安全架构

内容安全策略(CSP)

FlowPick 网站配置了严格的内容安全策略头,防止 XSS 攻击和数据泄露:

安全头作用
Cross-Origin-Opener-Policy: same-origin防止跨域窗口交互攻击
Cross-Origin-Embedder-Policy: require-corp控制跨域资源加载,保护 SharedArrayBuffer
关于 SharedArrayBufferCross-Origin-Embedder-Policy 在下载引擎中的技术作用,请参阅 下载引擎架构 — 内存安全。关于不同浏览器对 CSP 头的兼容性,请参阅 浏览器兼容性

无外部依赖

FlowPick 的核心功能不依赖任何外部服务:

  • 没有后端服务器:所有逻辑在浏览器端完成
  • 没有 CDN 依赖:FFmpeg WASM 等核心库打包在扩展内
  • 没有第三方 API:不调用任何外部接口
  • 没有遥测端点:不存在数据上报的服务器地址

开源透明

FlowPick 的完整源代码在 GitHub 上公开,任何人都可以:

  • 逐行审查代码,确认没有隐藏的数据收集逻辑
  • 自行构建扩展,验证发布版本与源代码一致
  • 提交安全审计报告
  • 贡献代码改进
关于如何从源码构建和验证扩展,请参阅 贡献指南。关于项目的整体架构设计,请参阅 项目架构

常见隐私疑虑

"扩展会不会偷偷上传我的浏览记录?"

不会。 您可以通过以下方式验证:

  1. 打开浏览器开发者工具(F12)
  2. 切换到 Network 标签页
  3. 正常使用 FlowPick 检测和下载媒体
  4. 观察网络请求——您只会看到目标网站的媒体文件请求,不会看到任何发往未知服务器的请求

FlowPick 没有后端服务器,代码中也不存在任何数据上报逻辑。

"为什么需要 webRequest 权限?这个权限很敏感"

webRequest 权限是媒体检测功能的技术前提。FlowPick 需要监听网络请求的响应头来判断哪些请求包含视频/音频/图片资源。这个权限的使用范围严格限制:

  • 仅匹配媒体 MIME 类型(video/*audio/*image/*application/x-mpegURL 等)
  • 不读取请求体内容
  • 不修改任何请求或响应
  • 不存储任何请求数据
关于 webRequest 权限在媒体检测中的具体工作原理,请参阅 视频嗅探 — 检测原理

"下载的文件会被上传到你们的服务器吗?"

绝对不会。 下载流程完全在本地完成:

  1. 浏览器从目标网站下载媒体分片 → 存储在内存中
  2. FFmpeg WASM 在浏览器内合并分片 → 仍在内存中
  3. 合并后的文件通过 File System Access API 或浏览器下载功能写入您的硬盘

整个过程中,文件数据从未离开您的设备。

关于文件写入的三级策略(FSA → StreamSaver → Blob)和内存安全机制,请参阅 下载引擎架构 — 写入策略

"FlowPick 如何盈利?是不是靠卖数据?"

FlowPick 不盈利,也不收集数据。这是一个开源项目,由社区维护。没有任何商业模式依赖用户数据。


与其他扩展的对比

对比维度FlowPick典型商业扩展
数据收集零收集通常收集使用数据
分析脚本通常包含 Google Analytics 等
后端服务器通常有云端服务
开源完全开源通常闭源
第三方 SDK可能包含广告/统计 SDK
离线可用完全离线通常需要联网验证

最佳实践

为获得最大程度的隐私保护,建议:

  • 安装前审查:查看扩展请求的权限列表,确认每项权限都有合理用途
  • 阅读源代码:如有技术能力,浏览 GitHub 仓库确认没有可疑代码
  • 无痕模式:在敏感网站上使用浏览器的无痕/隐私模式
  • 定期清理:定期清除扩展的本地存储数据
  • 保持更新:及时更新到最新版本,获取安全修复
关于扩展的安装和权限确认流程,请参阅 安装指南。关于如何从源码自行构建扩展,请参阅 贡献指南 — 开发环境搭建

报告安全问题

如果您发现 FlowPick 存在安全漏洞或隐私问题:

  1. 不要公开披露——给我们时间修复
  2. 通过 GitHub Security Advisory 私下报告
  3. 我们将在 48 小时内 回复确认
  4. 有效报告将获得致谢

相关文档