【问题标题】:What encoding format is this?这是什么编码格式?
【发布时间】:2010-08-12 06:00:37
【问题描述】:

我正在尝试编辑(略微)专有格式,并且在其中一个文件中它将对连接字符串进行编码。

我有办法用它对我自己的数据进行编码,所以我可以对它进行一些逆向工程。

ABC123"/3

将编码为

rijcmlqXxEeLA4tSspHg5XfWJiq4w==

AB120";2

编码为

rijcmlqiF3LjnFJnYfEi2WvcSoPSg==

这是一种已知的编码格式吗?我试过 Base64 并没有产生任何有用的东西。

【问题讨论】:

  • 它可以是任何东西,已知的散列算法、加盐散列、折叠散列、带有rijcmlq...== 的CRC。有很多方法可以制作一个难以破解的密码。 NSA 人员可能拥有无需眨眼就能破解已知明文密码的机器,但我可以在一行 Perl 中创建一些对你(或我)来说非常复杂的东西。
  • 不能是哈希 - 明文连接字符串是连接所必需的。更有可能的是可逆加密。谁知道是哪一个。 :) 可能需要对代码进行一些逆向工程。查看依赖项列表可能会提供线索。

标签: language-agnostic encoding decoding


【解决方案1】:

可能加密后跟 Base64。许多应用会加密它们的连接字符串。

【讨论】:

  • 加密是一个安全的选择,加密算法不一定完全映射到可打印的字符集,因此需要对其进行 Base64 编码(从 == 后缀可以看出)。另一种选择是使用不同的基本类型算法,例如 Base32
【解决方案2】:

编写一个将两者都转换为二进制的程序。以这种方式扫描相似之处。

在 ascii 中不可能看到不完全是 8 位的模式。

【讨论】:

  • 一个相似之处是rijcmlq 开始于每个编码字符串。这似乎是某种签名
  • Rijndael(也称为 AES)是一种广为人知的、广泛实施的对称密码。但它本身不会产生签名;可能是 Rijndael 加密的块前面带有某种类型的标头。
猜你喜欢
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
  • 2021-03-30
  • 2011-09-24
  • 1970-01-01
  • 1970-01-01
  • 2011-04-02
相关资源
最近更新 更多