解码/编码这个"神秘"串

时间:2014-08-15 22:44:46

标签: encryption character-encoding hex encode

我为这个请求的模糊性质而道歉,我意识到这不是一个特定的编码问题(虽然编码转换是我最终的目标)。我有一个字符串值,看起来像这个“Gr3tsgAAAAAAAAAA”,我知道它可以以某种方式变成一个长整数看起来像这样的“3001924890”。我对第一种格式的所有值都以“AAAAAAAAAA”结尾,因此该部分似乎是一致的。

我坚持的部分是我不知道从哪里开始转换。有没有人认识到编码的字符串格式?是某种类型的十六进制?

1 个答案:

答案 0 :(得分:1)

AAA'表示Base64编码中的零字节。如果您的所有值都以AAAAAAAAAA'结尾,那么它们很可能都是四字节值,并带有尾随零。例如,' Gr3tsgAAAAAAAAAA' Base64解码为字节数组[26,189,237,178,0,0,0,0,0,0,0,0]。将前四个字节组合成一个四字节整数,你必须在Big-endian或Little-endian之间进行选择,即你在哪个方向读取字节?它可以是(26 * 256 * 256 * 256)+(189 * 256 * 256)+(237 * 256)+ 178,也可以是26 +(189 * 256)+(237 * 256 * 256)+( 178 * 256 * 256 * 256)。所以我猜这代表448654770或3001924890.你可以尝试一下,看看它是否给出了预期的结果。我希望它是小端的,在这个例子中,26只是26,并且数字向右构建(给出3001924890),如果需要的话,可以让右边的额外位置增加到更大的数字。 / p>