加密与编码工具:AES、RSA、国密 SM、JWT 与 Base64

参数全部显式可调,密钥和明文只在浏览器内存里参与运算。

共 14 个工具免注册使用移动端可用

全部加密工具

点开即用,多数工具已预填示例数据。

关于加密工具

加解密工具最怕两件事:一是把密钥贴到会上传的网站上,二是参数对不齐,导致「同样的算法,别人能解我不能解」。这一组工具把参数全部显式暴露出来——模式、填充、IV、输出编码——并且全部在浏览器本地运算。

覆盖三类需求:对称加密(AES、SM4)用于本地数据保护;非对称与签名(RSA、SM2、HMAC、JWT)用于接口鉴权和身份验证;编码转换(Base64、URL 编码、Unicode、摩斯)严格说不是加密,只是换一种表示形式,任何人都能还原。

国密系列按 GM/T 0003—2012(SM2)、GM/T 0004—2012(SM3)、GM/T 0002—2012(SM4)实现,用于对接政务、金融类要求国产密码算法的系统。

怎么用

  1. 1先确认对方系统的参数:算法、密钥长度、分组模式、填充方式、IV,以及输出是 Base64 还是 Hex。
  2. 2在工具里逐项对齐这些参数再粘贴内容——参数不一致是解密失败最常见的原因。
  3. 3结果可一键复制。调试完请自行清空页面,不要把生产密钥留在浏览器标签里。

典型场景

联调接口签名

按对方文档在 HMAC 工具里拼接待签串,比对生成的签名与服务端日志是否一致。

排查登录态

把前端拿到的 JWT 粘进解析工具,直接看 payload 里的 exp 和 iss,确认是过期还是签发方不对。

对接政务系统

用 SM2 验签、SM4 解密核对报文,确认本地实现与对方一致。

处理乱码

从日志里扒出 \u4e2d\u6587 这类转义串,用 Unicode 工具还原成中文。

FAQ

加密工具常见问题

AES 解密失败,一般是哪里没对上?

按出现频率排:①分组模式不同(CBC 需要 IV,ECB 不需要,GCM 还需要认证标签);②填充方式不同(PKCS7 与 Zero Padding 结果不同);③密钥长度不匹配,AES-128/192/256 分别要求 16/24/32 字节;④输入编码搞混,密文是 Base64 还是 Hex;⑤密钥本身被当成字符串而不是十六进制解析。逐项和对方文档核对一遍基本都能解决。

MD5 能解密吗?

不能。MD5 是单向散列,不是加密算法,从摘要无法还原原文。网上所谓「MD5 解密」都是彩虹表——事先算好海量常见字符串的摘要再反查,只对弱口令有效。也正因为如此,MD5 和 SHA-1 都不应再用于密码存储,请在服务端改用 bcrypt、scrypt 或 Argon2。

Base64 算加密吗?

不算。Base64 只是把二进制数据编码成 64 个可打印字符,任何人都能一步还原,没有密钥概念。它的用途是让二进制内容能安全穿过只接受文本的通道,比如邮件附件、JSON 字段、Data URL。如果需要保密,要在 Base64 之前先做真正的加密。

在这里解析 JWT 安全吗?

解析在浏览器本地完成,token 不会上传。但要理解 JWT 的性质:header 和 payload 只是 Base64URL 编码,本身就是明文可读的,任何拿到 token 的人都能看到里面的内容。所以 payload 里不该放密码、身份证号这类敏感信息。需要验签时请使用测试密钥。

国密 SM2、SM3、SM4 分别对应什么?

SM2 是基于椭圆曲线的非对称算法,用于签名验签和密钥交换,地位类似 RSA 或 ECDSA;SM3 是摘要算法,输出 256 位,地位类似 SHA-256;SM4 是分组对称加密,分组和密钥都是 128 位,地位类似 AES-128。国内政务、金融和等保测评项目常要求使用这一套算法。

RSA 能加密多长的内容?

受密钥长度限制。1024 位密钥用 PKCS#1 v1.5 填充时,单次最多加密 117 字节;2048 位是 245 字节。所以实际工程里几乎不用 RSA 直接加密业务数据,而是用它加密一个随机生成的 AES 密钥,再用 AES 加密正文,这叫混合加密。签名场景则是先算摘要再对摘要签名,不受长度限制。

    问题反馈