文本加密/解密

加密

用浏览器原生 Web Crypto 对文本做 AES-GCM 认证加密,密钥由 PBKDF2 从口令派生并随机生成盐值,因此相同明文每次得到的密文都不同。密文按 Base64 输出,可粘贴到任意文本载体,解密需使用同一口令,适合临时加密敏感笔记与配置片段。解密失败时会提示口令错误或密文被改动。

就绪
明文
13 字符
密文
0 字符

关于 文本加密/解密

当你想给一段文字加把锁、只让知道口令的人才能看到时,就需要对称加密。本工具用浏览器的 Web Crypto API 实现 AES 加解密:你输入明文和口令,工具会通过 PBKDF2 等密钥派生函数把口令转成密钥,再以 AES-GCM 模式加密,输出含随机 IV 的密文(通常以 Base64 呈现);解密时输入同一口令即可还原。所有运算都在本地完成,明文、口令和密钥都不离开浏览器,适合临时加密一段笔记、配置或敏感信息后再通过普通渠道传递。加密结果通常以编码文本呈现,便于放进邮件或聊天窗口安全传输;请记住口令一旦遗失便无法找回,重要内容建议另行备份,也不要在同一口令下长期复用同一份密文,定期更换口令能降低历史密文被批量破解时带来的连带风险。

在口令加密的场景里,安全性主要取决于口令如何变成密钥,而不是取决于算法名字听起来是否先进。直接使用口令作为密钥会大幅降低强度,因为口令空间远小于密钥空间;因此需要经过专门的派生过程增加计算成本与随机性。理解这一点,就能判断一个实现是否值得信任:它是否使用了专门的派生步骤,以及迭代成本是否可配置。

同一份明文每次加密应当得到不同的密文,这是评估实现质量的另一个关键指标。实现这一点需要每次生成随机的初始向量,并与密文一起保存;若初始向量固定或复用,相同内容会得到相同密文,攻击者据此可以判断两段内容是否相同。因此在选择工具或编写代码时,应当确认随机量的生成与保存方式。

只保证机密性而不保证完整性是不够的,这在实际使用中往往被忽略。可篡改的密文在解密后可能得到毫无意义的内容,而系统若不校验完整性,就无法区分「内容被改动」与「口令错误」。因此更稳妥的做法是使用带认证的加密方式,让解密在内容被改动时明确失败,而不是返回一个看似正常的错误结果。

加密模式的差异会影响安全与使用方式,选择时应当理解它们的取舍。分块模式需要一个不可复用的随机量并逐块处理,对使用顺序有要求;流式认证模式把加密与校验合并,使用更简单但要求随机量绝不重复。因此面对需要保存大量记录的场景,随机量的管理方式往往比算法本身更容易出问题。

密文与口令的传递必须走两条独立渠道,这是最容易在流程上出错的一环。若把密文与口令放在同一封邮件或同一个聊天窗口里,加密实际上只起到了形式作用。因此在设计交付流程时应当明确「密文走哪条路、口令走哪条路」,并把这一点写进操作说明,而不是依赖经手人自觉。

最后,这类操作的结果无法通过肉眼判断是否正确,因此应当设计可验证的往返流程。加密后立即解密并与原文比对,能在交付前发现口令记错、编码不当或复制不完整等问题;而缺少这一步时,问题往往要等到接收方无法解密才暴露,届时排查成本高得多。把往返验证作为固定步骤,收益明确。

实现原理

对称加密用同一把密钥加解密,密钥通常由口令经拉长的派生函数生成。每次加密都会生成一个随机初始化向量并与密文一同保存,因此同样的明文与口令会得到不同密文——这不是随机性缺陷,而是必要的语义安全属性:若两次结果相同,攻击者就能通过比对密文推断两段明文是否一致。

输入明文 hello,口令 pw
输出两次加密得到不同的密文与初始化向量;用同一口令解密均还原为 hello

使用方法

  1. 打开「文本加密/解密」
  2. 输入待处理的内容并设置参数
  3. 根据需要调整输出选项
  4. 点击「生成」按钮,结果实时显示
  5. 复制或导出结果

使用场景

  • 加密敏感笔记 — 把含密码或密钥的备忘录加密成密文,存进普通笔记软件也不怕泄露。
  • 安全传纸条 — 把消息加密后通过聊天工具发出,口令另走电话等独立渠道告知对方。
  • 保护配置片段 — 对要贴进工单或文档的连接串等内容加密,避免明文暴露。
  • 学习对称加密 — 直观观察同一明文配不同口令、不同 IV 时密文如何变化。
  • 临时归档 — 把暂不用但敏感的文本加密保存,需要时再用口令解开。

常见问题

用的是哪种加密算法?

本工具采用 AES-GCM 这一现代认证加密模式,它在加密的同时附带完整性校验标签,密文一旦被篡改解密会直接失败,比仅加密的 CBC 模式更安全。

口令是直接当密钥用吗?

不是。口令会先经 PBKDF2 配合随机盐和多次迭代派生成定长密钥,这样能抵抗彩虹表,并让弱口令的暴力破解变慢。

为什么每次加密同样内容密文都不同?

因为每次都用新的随机 IV(初始向量)。这是安全特性,能防止攻击者通过相同密文推断出明文重复,解密时 IV 会随密文一起被读取。

忘记口令还能解密吗?

不能。没有口令就无法派生出密钥,密文在数学上不可还原。本工具不保存任何口令或恢复后门,请务必牢记口令。

这和编码(Base64)是一回事吗?

完全不同。Base64 只是可逆的编码,任何人都能解码,不提供保密性;加密需要密钥才能还原。若只想做编码,请用本站的 Base64 工具。

同一段文字和口令,两次加密的结果为什么不一样?

这是正确行为:每次加密都会生成一个新的随机初始化向量,它与密文一起保存,因而同样的明文与口令也会得到不同密文。反过来,如果两次结果完全相同,说明初始化向量被固定了,这在语义上不安全,因为攻击者可以通过比对密文推断出两段明文是否相同。解密只需要密文与口令,初始化向量已包含在密文中。

口令丢了还能解开吗?

不能。这类加密以口令派生出密钥,没有口令就无法重建密钥,也不存在后门或恢复机制,这正是它的安全前提。使用时应把口令与密文分开保管,例如密文存文件、口令记在密码管理器里;若担心遗忘导致数据永久不可读,应提前设计密钥托管方案,而不是在丢失之后寻找补救手段。

加密后的结果每次都不一样,能解密吗?

能。现代加密(AES-GCM 等)每次使用随机 IV/nonce,所以同样明文产生不同密文——这正是安全性来源。解密时 IV 从密文里读出,不需要你额外提供。密文变大也是因为 IV 与认证标签附加在结果里。

广告