功能定位:为什么需要“排除指定文件夹”
SafeW 的加密保险库(Encrypted Vault)自 v4.2.0 起把「自动备份」从链上私钥分片扩展到本地加密容器,默认每日 02:00 增量上传至 iCloud/Android Auto-Backup 或自托管 WebDAV。DAO 财务、NFT 工作室这类日增千级小文件的场景,日志、缓存、渲染中间文件常把备份窗口撑爆,触发 iCloud 50 GB 日限流,还伴随流量超额与电池陡耗。排除指定文件夹让备份只聚焦“高价值密钥与签名记录”,其余低价值数据留在本地沙盒,既省网络 IO,也缩窄合规审计面。
前置检查:版本、权限与存储配额
动手前请确认以下四项,任何一项缺失都会导致「排除规则」入口灰色或备份失败。
1. 版本:SafeW 主程序 ≥ v4.2.0(设置→关于→版本号)。
2. 系统:iOS 17.4+/Android 14+,且已开启生物识别(Face ID/指纹),否则「加密容器」选项呈灰色。
3. 存储:iCloud 剩余空间 ≥ 保险库当前体积的 1.5 倍;若用 WebDAV,先确认服务端支持 zstd 流压缩,否则回退到 gzip 会膨胀约 18%。
4. 网络:首次配置需在可信 Wi-Fi,蜂窝下大于 200 MB 的容器会被系统级拦截。
操作路径(最短入口)
iOS
打开 SafeW → 底部「我」→ 加密保险库 → 右上角「⋯」→ 自动备份 → 排除规则 → 添加文件夹 → 在系统文件选取器里点选 → 确认。
Android
打开 SafeW → 右滑抽屉 → 设置 → 加密保险库 → 自动备份 → 排除规则 → 添加文件夹 → 勾选目录 → 确认。
桌面端(macOS/Win)
目前桌面端仅支持「查看」排除列表,修改需回移动端;官方文档注明该限制出于“沙盒外泄”顾虑,预计后续版本同步。
配置示例:DAO 财库如何排除每日 3 GB 日志
场景:某 7-of-11 多签财库使用 SafeW 托管主私钥分片,每日链上归集约 200 笔,日志目录 /SafeW/Logs/Audit 日增 3 GB。全量备份导致 iCloud 一周两次限流,备份失败告警频发。
- 在「排除规则」添加
/SafeW/Logs,匹配模式选「前缀匹配」。
2. 打开「仅保留最近 7 天本地日志」开关(SafeW→设置→高级→日志轮转),进一步把本地体积压在 500 MB 以内。
3. 备份策略改为「每周全量+每日增量」;经验性观察,流量下降 92%,备份窗口由 38 分钟缩短至 3 分钟。
提示:若日志内含需合规审计的转账凭证,可在「排除例外」里添加关键字「TxnHash」,SafeW 会仅打包含该字段的日志文件,其余跳过。
三种匹配模式对比与取舍
| 模式 | 说明 | 适用场景 | 误杀风险 |
|---|---|---|---|
| 前缀匹配 | 路径以字符串开头即排除 | 日志、缓存目录 | 低 |
| 正则匹配 | Java 风格正则 | 多版本 SDK 缓存 | 中 |
| 哈希黑名单 | 计算文件 MD5 再过滤 | 重复渲染素材 | 极低,但 CPU 高 |
经验性观察:前缀匹配在 95% 场景下够用,正则只在“版本号目录”这类动态路径出现;哈希模式虽精准,但旧手机在 2 万文件场景下扫描耗时数十秒,需权衡。
常见失败分支与回退方案
现象 A:排除列表保存后自动清空
原因:iOS 17.4 的「本地网络」权限被系统回收,SafeW 无法写入配置文件。处置:系统设置→SafeW→本地网络→重新开关一次,再回应用保存即可。
现象 B:Android 提示“路径不存在”
原因:Android 11+ 分区存储限制,应用只能访问 /Android/data/com.safewallet 以内目录。处置:把需排除的缓存挪到沙盒内,或在「存储」设置里手动授予「所有文件访问」权限。
现象 C:备份体积未下降
原因:排除规则仅对「下一次增量」生效,已上传的容器不会自清理。处置:在 WebDAV 端手动删除旧快照,或本地「立即备份」触发全新基线。
监控与验收:如何确认真的排除了
- 备份完成后,进入「我→加密保险库→备份历史」点最新快照,右侧有「文件清单」按钮,下载
manifest.zst。
2. 用zstd -d manifest.zst -o - | grep -v excluded_dir查看,若被排除路径未出现,即成功。
3. 对比前后两次快照体积,经验性观察,日志场景可下降 80–95%。
不适用场景与合规提醒
1. 监管要求「全量留痕」的持牌交易所钱包,不应使用排除功能,否则审计方会视为篡改证据链。
2. 若日志内含欧盟 DAC7 要求的税务流水,排除前需先导出 CSV 并做哈希存证,否则可能面临罚款。
3. 冷启动旧手机做离线签名器时,因无网络,排除规则仅影响本地容器压缩,不影响链上广播,可放心开启。
与第三方归档机器人协同(最小权限)
经验性观察:部分团队用自研脚本把 manifest.zst 拉到私有 GitLab 做版本对比。此时需:
• 机器人账号仅授予「只读」WebDAV 子目录权限;
• 在 SafeW 侧开启「清单文件单独目录」开关,避免 token 泄露导致整库被拉取;
• 每季度轮换 WebDAV 口令,并在 SafeW「连接测试」里确认 401 旧口令已失效。
性能与成本对照:开与不开的差异
| 指标 | 默认全量 | 排除日志后 | 备注 |
|---|---|---|---|
| 日备份流量 | 约 3.2 GB | 约 180 MB | iCloud 0 费用档即可 |
| 备份耗时 | 38 min | 3 min | Wi-Fi 6 环境 |
| 电量消耗 | 可见 12% 陡降 | 无感知 | iPhone 13 实测 |
最佳实践 6 条检查表
- 先用「前缀匹配」排除顶层缓存目录,90% 场景够用。
2. 正则模式上线前在「测试快照」里跑一遍,确认无误杀私钥分片。
3. 每月第一天手动触发「全量+校验」,防止静默 bit rot。
4. 对欧盟用户,排除前把涉税日志导出并做 SHA-256 存证,再上传至合规云。
5. 冷启动旧手机勿关闭本地压缩,排除规则仍能节省 50% 二维码传输次数。
6. 任何排除变更后,保留最近两份快照不删,方便回滚。
FAQ(结构化数据)
排除规则对已经上传的历史快照有效吗?
不会自动清理历史快照,需手动在云端删除旧版本或新建基线。
Android 11 无法选取外部 SD 卡怎么办?
把需排除目录迁移至 /Android/data/com.safewallet/cache,或在系统设置里授予「所有文件访问」权限。
哈希黑名单模式为何耗时较长?
需逐文件计算 MD5,旧手机在 2 万文件场景下可能耗时数十秒,建议仅对小目录启用。
下一步行动
刚升级 v4.2.0 的用户,可先对「/SafeW/Logs」做一次前缀排除,观察一周备份流量与电量曲线;确认无异常后,再把渲染缓存、链上监控 CSV 逐步纳入排除列表。每月保留一份全量快照,遇到合规抽查时可随时回滚。SafeW 的加密保险库已把“备份成本”降到肉眼不可见,现在轮到你用排除规则把“冗余数据”也踢出去。
