你在聊天软件里发出去的密码哪儿也不会去:它躺在聊天记录里、备份里、对方的云端里,三年后任何拿到其中一处的人都能找到它。文件也一样:用邮件发了,它就明文躺在邮件服务器上,你在自己这边删多少遍都没用。下面四种方法,把秘密交出去之后,除了收件人手里,哪儿都不留。全在浏览器里,不用装东西。
| 秘密会沉淀在哪儿 | |
|---|---|
| 聊天软件 | 记录、备份、云端 |
| 邮件 | 发件方和收件方的服务器 |
| 网盘 | 服务商那儿,永远 |
| 你这边删了 | 不等于到处都删了 |
方法一:阅后即焚的便条
适合密码、验证码、卡号,一切短的东西。把文字写进阅后即焚的便条:它直接在浏览器里加密,你拿到一个链接,第一次被读之后便条就消失。你设定的时间里没人打开,它自己烧掉。
这个设计的关键:密钥就在链接本身里,# 号后面。那是 URL 片段 (地址里井号后面的那一段,浏览器永远不会把它发给服务器),协议本身就是这么规定的。到达服务器的只有加密后的字符串和它的名字,名字也是从密钥推出来的。我们没有任何东西可以解密,这不是承诺,是没有钥匙。
事先要明白的一点:如果链接被错的人打开,读到便条的是他,真正的收件人看到的是「已经烧掉」。这有个好处:你马上知道链接跑偏了。但便条防的是秘密永远留在聊天记录里,不是防有人抢走链接。聊天软件的链接预览也不会烧掉便条:读取靠页面上的按钮,不靠访问。
方法二:文件直传,不经过服务器
适合任何大小、不该在任何地方停留的文件。404 Send 把文件从你的浏览器直接送到收件人的浏览器。文件不会落在我们的服务器上:我们只转发一个加密的信封,里面是连接描述,让两个浏览器找到对方。文件、文件名、双方的地址,我们都看不到。
两个限制,都说在前面。第一:收件人打开链接、点「接收」之前,文件还在你的硬盘上,传输没开始。所以标签页不能关,这不是上传到服务器,是直连,一方没了另一方就没法工作。链接十分钟有效。第二:大小受收件人内存限制,浏览器要把整个文件拼完才能保存。
适合谁:两个人都在屏幕前。不适合谁:「回头再看」的收件人。那是方法三的事。
方法三:用密码锁上,随便怎么发
适合要走邮件或网盘的文件,因为别的方式太麻烦。发之前先用密码加密文件:密码变成密钥,文件变成一堆没有密码就读不了的字节。用的是 AES-256 (标准加密算法,银行和聊天软件用的就是它),并且是一种不光藏内容、还能发现文件在路上被换过或损坏的模式。全部在浏览器里算,文件不上传。
短文字用用密码加密文字做同样的事:输出一行字符串,贴到哪儿都行。
比带密码的压缩包好在哪儿:不用装东西,而且算法肯定是现代的。老式 ZIP 的加密几分钟就能破,而某个压缩包里用的是哪种,从文件上看不出来。
让这个方法真正管用的只有一条规则:密码走另一条通道,别和文件走同一条。文件走邮件,密码用语音说或者在聊天里发,或者反过来。要的是分开:万一聊天记录被人看了,里面不该同时有文件和打开它的钥匙。第二条:密码忘了就等于文件丢了。我们不存密码、不存密钥、不存副本,没有东西可以找回,也没有人能找回。
| 什么走哪条路 | |
|---|---|
| 密码、验证码、卡号 | 阅后即焚的便条 |
| 文件,两人都在线 | 直传,Send |
| 文件,对方回头再看 | 密码加密,随便怎么发 |
| 长期来往 | 公钥加密 |
| 文件的密码 | 永远走另一条通道 |
方法四:对收件人加密,不用共享密码
如果你和某个人经常交换秘密,每次编一个密码再传过去会很烦。那就为收件人加密:对方公布一次自己的公钥,你对着它加密,只有他能用自己的私钥解开。没有共享密码,没有东西要传,也没有东西可以截。所有端到端加密的通讯用的都是这套机制,只是这里不需要装应用。
我自己怎么做
说实话。给客人的 Wi-Fi 密码:一小时的便条。给会计的合同:密码加密,文件走邮件,密码打电话说。给朋友的一百张照片:两人都在线时用 Send。和同一个人长期来往:交换一次公钥,从此不用密码。
我不会做的:在放着便条链接的同一个聊天里发密码。便条防的是留存,不是防此刻正在读这个聊天的人。
| 发之前 | |
|---|---|
| 秘密 | 不留在聊天记录里 |
| 文件的密码 | 走另一条通道 |
| 便条链接 | 不和密码放一起 |
| 收件人 | 知道只能打开一次 |
| 时间 | 四条,一分钟 |
这些方法做不到什么
它们防不住此刻正在实时读你聊天或邮件的人:他截走链接,先把便条打开。这种情况只有另一条通道能救。它们也不验证收件人是不是他自称的那个人:你把密码发给骗子,加密的密码会完好无损地到骗子手里。它们和 VPN 没有关系:隧道把你的地址藏起来不让网络看见,而秘密不是从网络里漏的,是从聊天记录里漏的。隧道藏什么、不藏什么,在代理是什么意思里。
同一家族里还有一件事:你要交出去的那个密码,本身可能已经在泄露库里了。一秒钟就能查,不用把它发到任何地方,怎么做到的在密码泄露查询里。
不知道哪种方法适合你的情况,把情况说给 AI。
帮我选一种发送秘密的方法。
发什么:(密码 / 验证码 / 文件,多大 / 很多文件)。
发给谁:(一次 / 长期发给同一个人)。
对方现在在屏幕前吗:(在 / 不在)。
我们平时用什么联系:(聊天软件 / 邮件 / 电话)。
告诉我哪种方法合适,如果需要密码,用哪条第二
通道来传。
一句话总结
- 聊天记录和邮件里的秘密会永远留在那儿。
- 短的:阅后即焚的便条,密钥在链接里,我们没有。
- 现在就要的文件:浏览器直传,不经过服务器。
- 回头再看的文件:密码加密随便怎么发,密码走另一条通道。
- 长期来往:对收件人加密,根本不用密码。