规则和照片一样,只是多了三个坑
用系统的隐藏相册、锁定的备忘录或保险库 App 来隐藏视频,逻辑与隐藏照片完全一致——完整对比请看照片那一篇。视频接着又多出三个自己的坑:它很大,它有缩略图,它还需要播放。
坑一:体积
一分钟 4K 视频就是几百 MB。那些动不动就重新编码、复制或上传视频的 App,会大量消耗存储、电量和时间——而一个把你的视频上传“以便处理”的 App,其实已经回答了隐私问题。要在不把内容送出设备的前提下扛住真实体量的视频,只有设备端分块加密这一条路。
坑二:缩略图与预览
每个图库界面都会显示封面帧。问题在于这些画面存在哪里。如果一个保险库为了速度把缩略图明文存放,那么这段“隐藏”的视频就有了一张看得见的脸——出现在 App 缓存里、在聚焦搜索的预览里,或者在你切走应用时系统拍下的那张快照里。为视频而设计的保险库,会把缩略图和内容一起加密,并把自己在应用切换器里的快照涂白。
坑三:播放残留
播放加密视频最省事的做法,是先解密成一个临时文件,再交给系统播放器。那个临时文件就是你秘密内容的一份明文副本,会一直躺在存储里,直到某个东西恰好把它覆盖。正确的做法是在内存中流式解密。这一点从外面根本看不出来,所以在视频这件事上,开发商的技术文档(或一次审计)比保险库做的任何其他事都更重要。
把它做对
能在保险库 App 里录制的敏感视频,就直接在里面录,让照片图库从头到尾都没碰过它。导入已有视频时:先导入,确认能在保险库里正常播放,再从“照片”中删除,清空“最近删除”,并记得排查这期间同步过的任何设备。