概述
PeekLink 是一款 Chrome 浏览器扩展,旨在通过长按或拖拽链接来提供即时的网页预览功能。我们非常重视您的隐私,承诺保护您的个人信息和浏览数据。
核心承诺:PeekLink 不收集、存储或传输任何个人浏览数据。
我们收集的信息
我们不收集的数据
- 浏览历史:我们不记录您访问的网站或浏览行为
- 个人信息:我们不收集姓名、邮箱、电话等个人身份信息
- 网页内容:我们不读取、存储或分析您预览的网页内容
- 搜索记录:我们不跟踪您的搜索查询或结果
- 位置信息:我们不获取或使用您的地理位置
本地存储的设置数据
PeekLink 仅在您的设备上本地存储以下设置信息:
- 预览窗口大小和位置偏好
- 主题设置(深色/浅色模式)
- 长按延迟时间设置(默认500毫秒)
- 快捷键启用状态
- 预览模式偏好(悬浮窗口/侧边栏/新标签页)
- 网站特定的预览设置
- 其他用户界面偏好设置
这些设置通过 Chrome 的 chrome.storage.sync
API 存储,仅用于在您的不同设备间同步设置,不会发送给我们或任何第三方。
我们如何使用信息
技术实现说明
为了实现链接预览功能,PeekLink 使用以下技术方案:
- 内容脚本注入:在您访问的网页上监听长按事件,识别链接并创建预览窗口
- 声明式网络请求(declarativeNetRequest):临时修改特定网站的安全策略以启用预览功能(详见下方权限说明)
- Shadow DOM 技术:创建隔离的预览界面,防止与原网页样式冲突
- 本地事件处理:在您的浏览器中本地处理长按和拖拽事件
- iframe 沙箱技术:预览内容在安全的 iframe 沙箱环境中运行
- 模块化架构:使用 ES6 模块系统确保代码安全性和可维护性
所有这些操作都在您的设备上本地完成,不涉及远程服务器通信。
权限使用详细说明
为什么需要访问所有网站
权限类型:访问 http://*/* 和 https://*/* 网站
使用目的:
- 在您访问的任何网页上检测长按链接的操作
- 在当前页面创建悬浮预览窗口
- 加载用户选择预览的任意链接内容
- 注入必要的脚本以实现预览功能
为什么必需:由于无法预知用户会在哪些网站使用预览功能,我们需要能够在所有网站上运行。这是实现"在任意网页长按任意链接进行预览"这一核心功能的技术要求。
我们承诺不会:
- 记录或上传您的浏览历史
- 收集或分析页面内容
- 修改网页原有内容(仅添加预览窗口)
- 在后台持续运行或监控
安全保障措施
技术安全措施
- Shadow DOM 隔离:所有预览界面使用 Shadow DOM 技术,完全隔离与网页的样式和脚本交互
- iframe 沙箱保护:预览内容运行在严格的沙箱环境中,防止恶意代码执行
- 输入验证:所有用户输入和消息传递都经过严格验证,防止注入攻击
- 错误处理:安全的错误处理机制,不会暴露系统内部信息
- 自动过期机制:安全规则在10分钟后自动过期,限制潜在风险暴露时间
网络请求修改权限(declarativeNetRequest)
具体行为:
- 当您触发预览时,临时移除目标网站的以下响应头:
- X-Frame-Options(阻止网页被嵌入的安全策略)
- Content-Security-Policy 中的 frame-ancestors 指令
- 修改仅对预览的特定网站生效
- 规则在10分钟后自动失效,确保安全性
为什么需要:现代网站普遍设置了防止被嵌入iframe的安全策略。不进行此修改,约70%的主流网站(如 GitHub、Twitter、Reddit等)将无法预览。
安全措施:
- 修改是临时的,不会永久改变网站安全设置
- 仅在用户主动触发预览时激活
- 10分钟自动过期机制
- 不影响您正常浏览网页的安全性
风险提示:虽然风险较低,但临时移除这些安全头可能使预览的网页更容易受到点击劫持攻击。建议仅在信任的网站使用预览功能。
其他权限说明
- storage:保存您的设置偏好,支持跨设备同步,数据完全本地存储
- sidePanel:在浏览器侧边栏显示预览内容,提供更好的浏览体验
- tabs:创建新标签页和管理预览相关的标签页操作,不访问标签页内容
- contextMenus:添加右键菜单选项"使用 PeekLink 预览",增强用户交互
- declarativeNetRequest:临时修改网络请求头以绕过iframe限制,仅在预览时生效
数据安全
- 本地处理:所有功能在您的浏览器中本地运行,无服务器依赖
- 无服务器通信:扩展不会向任何远程服务器发送数据或建立连接
- 沙箱隔离:预览内容在安全的 iframe 沙箱中运行,防止恶意代码执行
- 最小权限原则:仅申请实现功能所必需的浏览器权限
- 代码审查:所有代码都经过严格的安全审查,遵循最佳实践
- 开源透明:核心功能代码逻辑透明,可供用户和安全专家审查
- 及时更新:定期更新以修复潜在的安全漏洞
第三方服务
PeekLink 不使用任何第三方分析服务、广告网络或数据收集工具。预览的网页内容由原网站直接提供,我们不作为中间代理。
Chrome Web Store 合规性
PeekLink 完全符合 Chrome Web Store 的隐私要求:
- 不收集用户数据
- 权限使用透明且必要
- 不包含恶意代码或误导性功能
- 遵循 Manifest V3 安全标准
用户控制
设置管理
您可以随时:
- 通过扩展设置页面修改所有功能偏好
- 禁用或启用扩展功能
- 完全卸载扩展
数据删除
要删除所有本地存储的设置数据,您可以:
- 在扩展设置中点击"重置所有设置"
- 或直接卸载扩展(将自动删除所有相关数据)
政策更新
如果我们对此隐私政策进行重大更改,我们会通过扩展更新通知您。继续使用 PeekLink 即表示您同意更新后的政策。
透明度保证
PeekLink 的代码逻辑透明,您可以通过以下方式验证我们的隐私承诺:
- 本地验证:查看扩展的源代码(右键扩展图标 → 管理扩展 → 详细信息)
- 网络监控:使用 Chrome 开发者工具验证无外部网络请求
- 存储审查:检查 Chrome 设置中的存储数据(chrome://settings/content/all)
- 权限审查:所有权限使用均透明可查(chrome://extensions)
- 代码审查:可以查看扩展安装目录中的所有源代码文件
- 行为监控:使用网络监控工具确认扩展不进行任何外部通信
联系我们
如果您对此隐私政策有任何疑问或建议,请通过以下方式联系我们:
- GitHub 讨论:在 GitHub Discussions 中提问
- Chrome Web Store:通过扩展页面的评论功能反馈
- 问题反馈:通过 GitHub Discussions 反馈问题