ZH
我的工具

用密码加密/解密文本

用密码加密文本(PBKDF2-SHA256 + AES-256-GCM),得到一个 Base64 字符串,并可再解密。能检测密码错误和内容被改动,只在本地处理。

操作
请使用较长的口令。没有它,任何人(包括本页面)都无法恢复文本。
我的工具 →
广告

这个工具用密码锁住一条消息,这样你可以把它粘贴到邮件、笔记或聊天中而不被他人读到。它使用浏览器的 Web Crypto API:密码经 PBKDF2-SHA256(600,000 轮)拉伸成 256 位密钥,文本用 AES-256-GCM 加密,同时还能检测任何改动。结果是只有同一密码才能打开的一个 Base64 字符串。不会上传任何内容。

使用方法

  1. 选择“加密”,输入或粘贴文本,并输入一个强密码。
  2. 点击按钮,复制完整的 Base64 结果。
  3. 发送结果,并通过另一个渠道告知密码。
  4. 要读取时,选择“解密”,粘贴 Base64 并输入相同的密码。

计算公式

key = PBKDF2-HMAC-SHA256(password, salt, 600,000, 32 bytes); output = Base64(0x01 ‖ salt[16] ‖ IV[12] ‖ AES-256-GCM(key, IV, text) ‖ tag[16])

每条消息的盐和 IV 都是随机的,所以相同文本每次加密的结果都不同。16 字节的 GCM 标签会使密码错误、或输出中哪怕改动一个字符时,解密都明确失败。

示例

加密 28 字节的句子“晚上7点在北门见面。”得到 1 + 16 + 12 + 28 + 16 = 73 字节,用 Base64 写出是 100 个字符。用 "correct horse battery staple" 解密会返回这句话;密码只差一个字母则会提示“解密失败”。

在其他地方打开输出

该格式简单且公开,任何 AES-GCM 库都能读取。在 Python 的 cryptography 包中:先解码 Base64,取 salt = data[1:17]、iv = data[17:29],用 PBKDF2HMAC(SHA256(), 32, salt, 600000) 派生密钥,再调用 AESGCM(key).decrypt(iv, data[29:], None)。

常见问题

忘记密码后,你们能恢复我的文本吗?

不能。没有后门,服务器上也没有副本。没有密码,文本就一直保持锁定;防止被猜中的唯一办法是使用长而不常见的口令。

为什么是 600,000 轮 PBKDF2?

猜测密码的人必须重复每一轮,这会减慢离线攻击。PBKDF2-HMAC-SHA256 的 600,000 轮是 OWASP 对该函数推荐的数值,在现代浏览器中耗时远不到一秒。

这和 AES 工具有什么不同?

AES 加密工具为开发者开放了所有模式、密钥和 IV。本页面替你做出一个安全的选择,并把除密码以外所需的一切打包进一个字符串。

资料来源

最后更新:

引用此工具
APA

kakaoCalc. (2026, November 8). 用密码加密/解密文本. https://kakao.mobile/zh/tools/encrypt-decrypt-tool/

MLA

“用密码加密/解密文本.” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/encrypt-decrypt-tool/.

广告