一句话版本:用你自己的百炼密钥时,音频直接发给阿里云,不经过开发者的服务器;用谷歌账号试听或兑换码时,正在听的那一分钟会经过开发者的服务器转给阿里云,服务器不保存音频。密钥、字幕缓存、收藏和界面偏好都存在你自己的浏览器里,卸载即删除。
小宇宙跟读(以下简称「本扩展」)有三条识别路径。
填写自己的阿里云百炼 API Key 时,识别请求直接发给阿里云,不经过开发者的服务器。开发者看不到这把密钥,也看不到这条路径上的音频和识别结果。
不填密钥、改用谷歌账号试听时,正在听的那一分钟音频会经过开发者的服务器转发到阿里云百炼,服务器不保存音频。服务器会记下这个谷歌账号在本扩展里的试听余额。试听额度为每个谷歌账号 10 分钟,用完即止。
使用向开发者购买的兑换码时,音频同样经过开发者的服务器转发。这条路径不需要登录:服务器只认兑换码,余额记在码上,不和任何账号关联。
本扩展在你的浏览器本机保存以下内容:
| 内容 | 存放位置 | 用途 |
|---|---|---|
| 阿里云百炼 API Key | chrome.storage.local | 向阿里云发起识别请求时作为身份凭证 |
| 谷歌登录令牌 | 浏览器的谷歌登录会话 | 向开发者的服务器证明是哪一个谷歌账号,用来发放和查询试听额度 |
| 兑换码和它的剩余时长 | chrome.storage.local | 识别时向开发者的服务器证明用的是哪一张码,并在本机显示剩余时长 |
| 已识别的字幕片段 | IndexedDB | 再次收听同一段时不重复识别 |
| 收藏的单集、关注的节目、摘录的句子 | chrome.storage.local | 在侧边栏收藏夹里回听和查找 |
| 收听断点(最近 200 期) | chrome.storage.local | 「继续收听」,从上次停下的地方接着听 |
| 侧栏宽度、倍速、波形显隐 | chrome.storage.local | 记住你的界面设置 |
以上数据全部存于你自己的浏览器中,卸载扩展即一并删除。
本扩展只向以下地方发起网络请求:
1. 小宇宙音频与图片 CDN(*.xyzcdn.net)
按 HTTP Range 请求你当前播放位置附近的音频片段,用于切片识别,不下载整集;侧边栏收藏夹会加载单集和节目的封面图。少数节目的音频由播客托管平台提供(例如喜马拉雅的 *.xmcdn.com),这时会以同样的方式向该平台的音频地址请求片段。
2. 小宇宙网页(www.xiaoyuzhoufm.com)
读取公开的单集页、节目页,获得标题、封面等信息;对你关注的节目,每 6 小时读取一次节目页,检查是否有新单集。这些请求不携带你的 Cookie 或登录状态,小宇宙看到的只是一次普通的公开页面访问。
3. 阿里云百炼(dashscope.aliyuncs.com / *.aliyuncs.com)
使用你自己的 API Key 时,扩展把音频片段直接上传并提交语音识别,再取回带时间戳的文字。你的 API Key 仅作为请求的身份凭证发送给阿里云,不会发送给本扩展作者或任何其他方。
4. 开发者的识别服务器(CloudBase,上海)
只有在你使用谷歌账号试听、或使用兑换码时才会用到;填了自己的密钥并选用它时不会用到。试听时,扩展把谷歌登录令牌和当前这一分钟的音频发给这台服务器,服务器向谷歌核对令牌,再把音频转给阿里云百炼。使用兑换码时,扩展发送的是兑换码和当前这一分钟的音频,不发送任何账号信息。服务器只取出音频里的声音样本转给阿里云百炼,不把音频写入数据库。数据库里保留的是:谷歌账号的编号和邮箱地址、试听余额;兑换码的哈希值(不存明文)和剩余时长;每一次识别的请求编号、扣了多少秒,以及这一分钟识别出的文字。保留识别文字是为了网络中断后重试同一分钟时直接返回结果、不重复扣费。
阿里云对这部分数据的处理,适用阿里云自己的隐私政策:阿里云隐私权政策。
本扩展不包含任何统计、埋点、广告或第三方分析代码。
如对本政策有疑问,请通过本仓库的 GitHub Issues 联系。
本政策如有更新,会在本页面标注新的「最后更新」日期。