逆向工程 – 逆向工程师文件格式

这是我第一次尝试逆向工程,真的,我不知道该怎么做。我有一种程序化的心态,而不是流行加密方法的知识基础。

但是,在我看来,如果我使用正确格式的最小数据,并且知道某个单词或单词的数据出现,以及这个单词在数据中开始和结束的位置 – 我可能会发现解密整个文件的方法。

----- ENCRYPTED -------------------------------------------
HEX     44 5E 12 47 55 5E 53 17 4C 5C 49 4F 4F
ACII    D  ^  ?  G  U  ^  S  ?  L  \  I  O  O
DEC     68 94 63 71 85 94 83 63 76 92 73 79 79 
BIN     01000100 01011110 00111111 01000111 01010101 01011110 01010011 00111111    01001100 01011100 01001001 01001111 01001111
----- DECRYPTED -------------------------------------------
HEX     74 6F 20 74 61 6B 65 20 74 65 73 74 73
ASCII   t  o     t  a  k  e     t  e  s  t  s
DEC     116 111 32 116 97 107 101 32 116 101 115 116 115 
BIN     01110100 01101111 00100000 01110100 01100001 01101011 01100101 00100000 01110100 01100101 01110011 01110100 01110011

这只是一个数据样本。我知道标题信息的开始和结束,因为我检查了两个不同的标题的文件 – 所以我知道这些翻译成正确的单词 – 但是我从哪里去识别加密过程?

*我知道人们会问为什么:这是从VCE(考试)文件格式,我想把它翻译成XML或JSON。这将使我很容易编写一个程序,比较多个考试文件的问题和答案,附加,删除重复和创建新的考试文件。 *

尝试将两个字符串进行异或。你得到的是

HEX     30 31 32 33 34 35 36 37 38 39 3A 3B 3C
ASCII   0  1  2  3  4  5  6  7  8  9  :  ;  <

看到一个模式吗?

http://stackoverflow.com/questions/9132402/reverse-engineer-a-file-format

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:逆向工程 – 逆向工程师文件格式