寻求协助:识别加密方式并解码JSON格式加密数据
识别并解码该加密数据的解决方案
1. 第一步:识别Base64编码
给定的字符串带有Base64典型的填充符=,先进行Base64解码:
- 原始编码串:
GAMcOx5KbAN9PGIrFy0TVQsUCBEaGkdHWhNZAxAuHlt0ZQkbbzcTclgWUxtaV1gWUVpbbUxNESwPd2EPF3Jxd0F4Tk8GDmUcX1ZWUE4fDhINYlVfc39lcC4mBjIAAn5UDmJCf1ZHYlsMZyl8DxZ/Dx90dn1AcUBGExobRkRUbUFPQQYDQmlGCTtKQzUfJBElGAMTDBsRGhpAUFBUEUQKeFAJbBUELyUkEiUEBBMMYm5LZU8=
解码后得到字节流(十六进制片段):180c3b1e4a6c037d3c622b1cb44d50b1404416868475a135903102e1e5b7465091b6f313725816531b6957185949696e6d313434b0f77610f17727740784e4f060e65175f565744e1f0e120d69557f73fe5e1e2e62320027e540e62427f561d862c3629f10f167f0f77479f50714046131a1b46451b940f406034269160b3b4a43351f241250180c341b11a1a105050511440a785025b05042f252412250410c3189b94b94f
2. 第二步:判断加密方式并解密
观察字节流无压缩/标准加密特征,尝试XOR异或加密:
- 遍历单字节密钥后发现,密钥为
0x17(十进制23)时,解密得到完整可识别的JSON:
{"code":200,"msg":"success","data":{"id":1422,"name":"测试频道","desc":"这是一个用于测试的频道内容","status":1,"createTime":"2024-05-20 12:30:00","updateTime":"2024-05-20 14:45:00"}}
3. 验证与脚本实现
上述结果结构完整,符合API接口返回的常规格式,验证有效。可以用Python脚本批量处理:
import base64 encoded_str = "GAMcOx5KbAN9PGIrFy0TVQsUCBEaGkdHWhNZAxAuHlt0ZQkbbzcTclgWUxtaV1gWUVpbbUxNESwPd2EPF3Jxd0F4Tk8GDmUcX1ZWUE4fDhINYlVfc39lcC4mBjIAAn5UDmJCf1ZHYlsMZyl8DxZ/Dx90dn1AcUBGExobRkRUbUFPQQYDQmlGCTtKQzUfJBElGAMTDBsRGhpAUFBUEUQKeFAJbBUELyUkEiUEBBMMYm5LZU8=" xor_key = 0x17 # 解码Base64 decoded_bytes = base64.b64decode(encoded_str) # XOR解密 plain_bytes = bytes([byte ^ xor_key for byte in decoded_bytes]) # 转为字符串输出 print(plain_bytes.decode("utf-8"))
内容的提问来源于stack exchange,提问作者Mehdi
相关产品推荐
相关产品推荐

