用密码加密/解密文本
用密码加密文本(PBKDF2-SHA256 + AES-256-GCM),得到一个 Base64 字符串,并可再解密。能检测密码错误和内容被改动,只在本地处理。
这个工具用密码锁住一条消息,这样你可以把它粘贴到邮件、笔记或聊天中而不被他人读到。它使用浏览器的 Web Crypto API:密码经 PBKDF2-SHA256(600,000 轮)拉伸成 256 位密钥,文本用 AES-256-GCM 加密,同时还能检测任何改动。结果是只有同一密码才能打开的一个 Base64 字符串。不会上传任何内容。
使用方法
- 选择“加密”,输入或粘贴文本,并输入一个强密码。
- 点击按钮,复制完整的 Base64 结果。
- 发送结果,并通过另一个渠道告知密码。
- 要读取时,选择“解密”,粘贴 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。本页面替你做出一个安全的选择,并把除密码以外所需的一切打包进一个字符串。
资料来源
最后更新:
包含这些输入的页面地址: https://kakao.mobile/zh/tools/encrypt-decrypt-tool/
引用此工具
kakaoCalc. (2026, November 8). 用密码加密/解密文本. https://kakao.mobile/zh/tools/encrypt-decrypt-tool/
“用密码加密/解密文本.” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/encrypt-decrypt-tool/.