我是解码技术的新手,昨天刚刚了解了base64,sha-1,md5和其他几个。
我一直试图找出“orkut”蠕虫实际包含的内容。
过去几天,我遭到了许多orkut垃圾邮件发送者和黑客的攻击,他们发送给我们的网址也有相似之处。
我不知道它包含哪些信息,但我需要弄明白。
问题在于以下文本:
Foo+bZGMiDsstRKVgpjhlfxMVpM=
lmKpr4+L6caaXii9iokloJ1A4xQ=
上面的编码似乎是base64但不是,因为每当我尝试使用在线base64解码器解码它时,我得到原始输出并且它不能准确解码。
也许其他一些代码已与base64混合使用。
有人可以帮我解码一下吗?
答案 0 :(得分:3)
它是orkut蠕虫的一部分。 This page有一些细节。请注意,它提到了您在这些字符串中找到的JSHDF["Page.signature.raw"]
变量。
它是找到的页面的SHA1哈希值。 This page显示了它的解码形式。
答案 1 :(得分:2)
上面的编码似乎是base64,但事实并非如此,因为我曾尝试解码 它使用在线base64解码器,我得到原始输出,它不能准确解码。
是什么让你认为解码不正确?通常,您使用base64或hex编码二进制内容,以便可以将其作为文本传输。你不会对文本进行base64编码,所以解码你上面提供的字符串会导致ASCII gobbledygook就不足为奇了。
答案 2 :(得分:1)
答案 3 :(得分:1)
他们可能只是哈希。
如果它们是哈希值,那么如果原始内容超过certian大小,则“反转”它们在算法上是不可能的,因为在某个源数据大小之后,哈希变为有损压缩函数。
答案 4 :(得分:0)
通常Foo +无论是盐腌哈希的结果。通常使用salt存储哈希结果,并且盐可以以明文形式存储。要将盐与实际哈希值分开,通常使用+号。
使用Base64,因此哈希的二进制结果可以存储在文本中。您可以知道这些字符串的最后一部分可能是有效的Base64,因为Base64内容将始终是4的倍数。它为每3个字节的输入输出4个有效的ASCII字符。它用“=”符号填充末尾。
因此,对于Foo+bZGMiDsstRKVgpjhlfxMVpM=
,这可能是获取某些输入的结果,无论是某种消息,还是其他什么,并应用salt“Foo”,然后对结果进行散列。字符串值bZGMiDsstRKVgpjhlfxMVpM=
可能是某些散列函数的二进制结果。 online Base64 decoder显示十六进制而不是Base64的值为{ 6D 91 8C 88 3B 2C B5 12 95 82 98 E1 95 FC 4C 56 93 }
。是的,这不是ASCII文本。
Base64,二进制,十六进制,十进制,都是表示值的方法。将+
之后的部分视为一个数字。例如,上述136位数可以是128位散列的结果,也可以是8位CRC。谁知道?我不知道为什么你会收到垃圾邮件,或者为什么这些垃圾邮件会附加这些垃圾邮件,但这可能是对字符串结构性质的一些了解。