什么是这种编码,以及如何解码?

时间:2011-04-26 17:29:01

标签: asp.net captcha

我在ASP验证码图像中看到了这种编码,我想知道它是什么类型,以及如何解码它(如果可能的话!)

示例:

AJKF ==> Qp6TyMd9r7hGWwymcayiwg==

CQQL ==> b0oFR8d/QBNbGT2Ov8gx3g==

我没有脚本代码。

编码来自轮询中的验证码图像网址,因此我必须刷新轮询页面以获取包含已解码字符串的新网址。

http://www.aljazeera.net/Portal/KServices/Controles/SecureCAPTCHA/GenerateImage.aspx?Code=b0oFR8d/QBNbGT2Ov8gx3g==&Length=4

http://www.aljazeera.net/Portal/KServices/Controles/SecureCAPTCHA/GenerateImage.aspx?Code=Qp6TyMd9r7hGWwymcayiwg==&Length=4

2 个答案:

答案 0 :(得分:3)

两个字符串是128位值的Base64表示,因此它可能是输入的某种128位散列,但它似乎不像MD5那么简单输入字符串。

如果它是一个哈希值,由于碰撞而无法对其进行解码,尽管你可能会这样做。计算AAAA ... ZZZZ的哈希值并构建一个查找表,对于这样的短字符串,碰撞的可能性非常小。

Base64解码的十六进制值是(使用this converter):

AJKF ==> Qp6TyMd9r7hGWwymcayiwg== ==> 429E93C8C77DAFB8465B0CA671ACA2C2

CQQL ==> b0oFR8d/QBNbGT2Ov8gx3g== ==> 6F4A0547C77F40135B193D8EBFC831DE

Google找不到这两个十六进制字符串的匹配项,所以我猜它是自定义哈希值或输入值被修改(f.e. salted)。

答案 1 :(得分:1)

编码过程的结束步骤是base64,我对此几乎毫不怀疑,但它必须包含一些我无法清晰关注的前一步骤。也许在字符串字节上有一些哈希函数,然后是base64?最糟糕的情况可能是一些实际的加密,然后是base64编码。

谁能说出来......你能给我们更多的例子吗?而且,还没有其他方法可以解决您的问题吗?

编辑:我确信这是字符串的MD5哈希加上一些未知的salting。破解它是非常困难的。