功能定位:从“永久链接”到“可撤销授权”
在 SafeW 的加密文件分享模型里,下载权限并不是文件本身的属性,而是一条链下授权记录,由 SafeW-Talk 通道的零知识地址簿加密存储。2026 年 2 月发布的 v4.2.0 把“关闭下载”做成显式按钮,解决了旧版只能等链接过期的痛点。换句话说,你现在可以像撤回消息一样撤回下载权,而对方即使保存了原始链接,也会在前端收到 403 提示。
版本演进:为什么旧版只能“等过期”
v4.1 及更早版本采用“一次性签名 URL”方案:文件上传时写入 IPFS,SafeW 网关返回带 256-bit 随机参数的 HTTPS 链接,有效期在后台硬编码 30 天。由于签名私钥托管在网关,用户侧无法干预,导致提前撤销必须开工单。v4.2.0 把签名权下沉到客户端,网关只校验 MPC 门限签名,因此用户可在本地随时生成“负授权”交易,即时广播至 SafeW 节点,撤销动作平均在 3 个区块内生效(约 15 秒,视链上拥堵而定)。
操作路径:Android、iOS、桌面端最短入口
Android(v4.2.0 及以上)
- 打开 SafeW → 底部导航栏「文件」→「已分享」标签。
- 长按目标文件卡片 → 右侧弹出「权限」→「关闭下载」。
- 系统提示“本次撤销需消耗 ~0.0003 Gas 代付券”,点击「确认」。
- 看到「权限已撤销」绿条即完成;若 15 秒后仍显示「撤销中」,可下拉刷新。
示例:在地铁弱网环境,第 4 步绿条出现前可先锁屏,恢复网络后自动刷新,无需重复点击。
iOS(需 17.0+,Secure Enclave 完好)
- SafeW → 顶部「共享中心」→「我发出的」。
- 左滑文件行 → 出现橙色「撤销」按钮。
- Face ID 验证后自动提交 MPC 签名,无需额外 Gas 券(iOS 端现推广免券活动,截至当前的最新版本有效)。
桌面端(macOS/Win/Linux 统一 UI)
- 侧边栏「Files」→「Shared」→ 找到文件行。
- 点击「⋯」→「Revoke Download」。
- 弹出二维码,需用手机 SafeW 扫码完成门限签名(桌面端私钥分片不在本地,全程离线手机签名)。
- 扫码后 5 秒内桌面端显示「Revoked」,并自动同步至云端缓存。
提示
若文件曾开启“允许转存”,关闭下载后,对方已转存的副本不受控制;SafeW 只负责原链接失效。
常见分支:批量撤销、文件夹层级、过期策略冲突
批量撤销
在「已分享」列表顶部点击「批量编辑」→ 勾选多个文件 →「批量撤销」。经验性观察:一次超过 20 条时,MPC 协调耗时可能翻倍,建议分两次操作。
文件夹层级
若分享的是文件夹,关闭下载会递归撤销所有子文件链接,但不会删除已生成的子文件独立链接。需要确认二次提示「同时撤销子链接?」,默认关闭,可手动开启。
过期策略冲突
假设你曾设定「7 天后自动过期」,手动撤销会让该定时任务失效;再次开启分享时,原定时不会恢复,需要重新设置。
回退方案:误撤销后如何二次开启
SafeW 把撤销视为“写入负授权”,而非删除文件。因此你可以在「已分享」→「已撤销」里找到记录,点击「重新分享」生成新链接。注意:旧 URL 不会复活,对方需使用新地址;重新分享会重置所有统计(下载次数、访问 IP 数)。
警告
若文件已触发「继承流程」(180 天无操作),即使重新分享,继承人也仍可通过遗嘱 NFT 获取文件密钥;如需彻底回收,请删除文件而非仅撤销下载。
验证与观测:如何确认对方真的下不了
- 复制被撤销的链接到无痕浏览器,应返回 403 Forbidden,JSON 体含
"error":"negative_authority"。 - 在 SafeW →「文件」→「分享统计」里,对应记录的「最后下载时间」不再更新。
- 若你启用了 SafeW-Guard 风险雷达,可开启「链接嗅探」实验功能,输入旧链接,系统会给出 100 分风险警示,并提示「权限已撤销」。该功能在设置 → Labs → Link Sniffer,默认关闭。
与第三方 Bot 协同:最小权限原则
经验性观察:部分 DAO 使用 Telegram 群管 Bot 做“文件分发”。若 Bot 通过 SafeW API 获取链接,需授予share.readonly范围,切勿给share.write,否则 Bot 可在后台重新开启下载。撤销后,建议同步调用/v1/shares/{id}/revoke并校验返回字段status=="revoked",再向群聊推送“链接已失效”提示。
不适用场景清单
- 对方已把文件保存到本地或另存至 IPFS 独立网关;SafeW 只能让原链接失效,无法远程删除副本。
- 文件小于 1 KB 的纯文本:由于 SafeW 默认在链下缓存中保留 24 h,撤销后缓存仍可能通过 CDN 边缘节点命中,最长延迟 4 小时。
- 你使用的是 v4.0 以下版本,网关尚未支持负授权,撤销动作会提示「Unsupported」;必须升级。
- 文件处于「继承等待期」:继承人已生成遗嘱 NFT,撤销下载不影响其链上所有权,需走法律流程。
最佳实践 5 条
- 分享前先设定「允许下载次数」与「最短可用时长」,减少事后撤销频率。
- 对高敏文件,开启「下载即水印」功能,可把对方钱包地址隐写进 PDF,即使外泄也能溯源。
- 撤销后截图保存「负授权交易哈希」,用于后续合规审计;哈希在「设置 → 隐私 → 审计日志」一键导出。
- 定期用「批量检查失效」工具(Labs → Bulk Validator)扫描 90 天未访问链接,一键清理,降低暴露面。
- 若与 Treasury 多签共用,建议把「撤销权」纳入 2-of-3 小门限,防止单员工恶意关闭所有对外文件。
故障排查:撤销失败常见 3 现象
| 现象 | 可能原因 | 验证步骤 | 处置 |
|---|---|---|---|
| 提示「Network 429」 | MPC 节点限速 | 等 30 s 重试仍复现 | 切换至低峰 UTC 02:00-05:00 |
| 「负授权已存在」 | 重复点击 | 刷新列表状态显示 revoked | 无需再次操作 |
| 桌面端二维码扫了没反应 | 手机离线 | 手机飞行模式复现 | 关闭飞行模式,或改用 USB 桥接 |
FAQ(结构化数据)
撤销后对方还能在缓存里找到文件吗?
SafeW 边缘缓存会在撤销指令下发后 5 分钟内全局失效,最长不超过 4 小时;本地已下载副本不受控。
可以只对部分人关闭下载吗?
目前版本仅支持整条链接级撤销;精细化“部分地址禁止”已在路线图中,官方尚未公布上线日期。
撤销动作需要付费吗?
Android 与桌面端需消耗 Gas 代付券(约 0.0003 USD),iOS 端截至当前的最新版本推广期内免费。
为什么找不到「关闭下载」按钮?
请确认客户端已升级至 v4.2.0+;若文件处于「继承等待期」或「已删除」,系统会隐藏该按钮。
核心结论与下一步行动
SafeW 把“关闭已分享加密文件下载权限”做成一键链下负授权,平均 15 秒生效,兼容 MPC 多签与审计日志。若你管理的是 DAO 财库或对外披露包,建议立即做三件事:① 升级至 v4.2.0;② 用「批量检查失效」清理历史链接;③ 把撤销权纳入最小门限多签,防止单点恶意。完成这三步后,再遇到“文件发错群”即可秒级止损,而无需苦等 30 天过期。
展望未来两个版本,官方路线图已提及“细粒度地址黑名单”与“链上事件订阅”功能,届时可针对单地址撤销并实时推送 webhook,进一步缩短风控闭环。提前熟悉现行机制,将为后续升级留出平滑过渡空间。
