最近在定位一些网络问题时,需要抓取物理口报文进行分析。但是在wan出口的报文已经被AES对称加密,抓到的报文是密文,无法确认某些关键报文是否从wan出口发出。这个定位问题带来了不便。

当时在想,我知道对称加密的密钥,是否有工具能方便的帮我把密文解密成明文呢?后来在网上找到了这个超级好用的在线加解密工具箱 https://the-x.cn/zh-cn/cryptography/Aes.aspx。

AES加解密 android 代码 aes在线加解密_网络

它还有其他很多好用的工具,这里重点讲一下加解密部分。它支持DES、TripleDes、AES、RSA、SM2、SM4、SM3等多种加解密方式。这里用AES进行举例。

假如我们抓到了加密后的密文,用WireShark工具打开后,密文部分如下:

AES加解密 android 代码 aes在线加解密_https_02


可以选择密文Data部分,右键选择’复制’–>’…as a Hex Stream’。

AES加解密 android 代码 aes在线加解密_网络_03

然后将复制的hex stream粘贴到加解密左边的方框里。因为我们是hex stream,而加解密框默认是UTF-8,所以需要改为Hex。

AES加解密 android 代码 aes在线加解密_网络_04


根据实际配置选择正确的加解密模式、填充方式、加解密bit数,我这里用到的是ECB模式,Zero填充,256bits。

AES加解密 android 代码 aes在线加解密_网络_05

最后是加解密key的输入。将加解密key的hex流输入进去。

AES加解密 android 代码 aes在线加解密_网络_06


这里要注意一点,有时候输入后,网站识别错误,没有录入正确的加解密key。我们需要确认完成后,key的前面有个[HEX]:提示。例如下面的就是正确的。

AES加解密 android 代码 aes在线加解密_AES加解密 android 代码_07


此时所有的配置都已完成,在下面点击 ‘解密’ 按钮,在右面的输出框内会显示解密后的HEX + ASCII编码。当然你也可以手动选择使用何种方式展示。

AES加解密 android 代码 aes在线加解密_AES加解密 android 代码_08

实际使用中非常便捷,给我提供了很大帮助。希望也能帮助到其他有需要的朋友。