2017-02-23 85 views
-1

我正在一个项目中,我正在获取base64编码数据的一部分,但不是全部。是否有可能找出那部分base64编码数据是什么?是否有可能base64解码base64编码消息的一部分

例如。说我Base64编码hello world

它成为aGVsbG8gd29ybGQ=

但说我只能够捕捉到sbG8gd29y

哪个base4解码为ݽ

我熟悉如何base64编码过程的作品,我不能想想如何找出base64编码消息的哪部分没有将数据随机添加到正面和背面的块并与词典单词进行比较,但问题是我甚至不能100%确定我正在工作的数据包含字典单词。

感谢

回答

2

我只是使用在线conveter(http://www.convertstring.com/EncodeDecode/Base64Decode) 如果你把你拍摄的部分,你可以通过转换器运行它,看看它的一个base64无效长度编码字符串花了一点时间。

对于捕获的部分有一个有效的长度,你需要添加一些额外的字符(0-3取决于该部分的长度)。一个有效的base64字符串的长度可以被4完全消除。

选择一个字符(例如'a'),然后运行将正确数量的字符添加到部分,正面和背面的可能性。使用添加的字符,字符串将可以解码,其中一个解码值将更具可读性,即具有部分解码数据的字符串。

E.G:

sbG8gd29yaaa 
and 
    aaasbG8gd29y 

解码为:

����ݽɦ� 
and 
    i��lo wor 

可以由字符串(A-Z例如)内进行计数的 '正常' 字符的数目作出可读性一个基本程序化试验。你需要自己决定什么是'正常',它取决于数据和上下文的预期语言(例如,它只是数字)。