加密纸条

口令加密文字生成链接,密文只在 # 后,服务器收不到

加密纸条是做什么的

想发一段不想被聊天记录、邮箱服务器留底的话,比如账号密码、Wi-Fi 密码、一句私密留言:在这里写好内容、约一个口令,点生成就得到一条加密链接。链接 # 号后面那串是 AES-256-GCM 加出的密文,浏览器根本不会把 # 后面的部分发给服务器,本站也收不到;口令不进链接,用见面说或电话这种别的渠道告诉对方。

对方打开链接输入口令即可解密阅读。加密用的是浏览器原生 WebCrypto:口令经 PBKDF2 十五万次迭代派生密钥,盐和 IV 每次随机,同一句话两次生成的链接都不一样。口令丢了谁也解不开,包括我们自己。生成的链接还能转成二维码,当面扫一下就带走,不留转发记录。

核心功能

  • AES-256-GCM + PBKDF2 十五万次迭代
  • 盐与 IV 每次随机,同文不同密文
  • 密文只放 URL hash,服务器无感知
  • 支持二维码分享当面扫码
  • 口令丢失无法恢复的强约定

加密纸条怎么用

口令加密文字生成链接,密文只在 # 后,服务器收不到

  1. 写下要发的内容
  2. 设置口令并生成加密链接
  3. 把链接发给对方
  4. 用其他渠道告知口令

适合这些场景

  • 临时发账号密码
  • 共享 Wi-Fi 密码
  • 私密留言不留聊天记录

常见问题

服务器真的看不到内容吗?

密文只放在链接 # 号后面,HTTP 协议规定浏览器请求时不发送 # 后面的部分(叫片段标识符),服务器日志、CDN、统计脚本都拿不到;解密也在你浏览器里用 WebCrypto 完成,内容全程不落服务器。

口令忘了怎么办?

没有任何找回办法。加密密钥由口令经 PBKDF2 派生,服务器和页面都不保存口令,丢口令等于丢钥匙,密文就是一堆乱码。所以口令要选双方都不会忘的,或者多渠道记录在自己手里。

为什么本地 file:// 打开提示不能加密?

浏览器出于安全策略,在 file:// 协议下禁用了 crypto.subtle 接口,页面会明确提示并停止加解密功能。通过 http(s) 正常访问本站就没有这个问题,站内其他哈希类工具同样有此限制。