For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
首先昆明达内小编对比了一下缓存文件以及下载好的mp3文件,你可能会发现缓存文件多了1024个字节,而且和几个缓存文件对比,前1024个字节其实都一样,看来这是使了个障眼法,计算机培训小编去掉这1024个字节应该就是可以还原原版的音频数据了。
计算机培训班小编会发现加密前的一堆0x55加密后变成0xA9 0xE9 0xDA 0x52循环了,说明是用了4字节的循环加密,然后切换成2进制研究
加密前0x55 0x55 0x55 0x55 01010101 01010101 01010101 01010101
加密后0xA9 0xE9 0xDA 0x52 10101001 11101001 11011010 01010010
对称逐字节加密的运算也就循环移位或者异或固定的数或者取反,但计算机培训班小编觉得上面的几组数循环移位和取反都不太像,就先假设是异或固定的数A B C D,接下来做填空题:
0x55 0x55 0x55 0x55 01010101 01010101 01010101 01010101
A B C D 11111100 10111100 10001111 00000111
0xA9 0xE9 0xDA 0x52 10101001 11101001 11011010 01010010
得出:A B C D分别为0xFC 0xBC 0x8F 0x07 ,然后取开头的数据验证:
加密前0x49 0x44 0x33 0x03 01001001 01000100 00110011 00000011
xor 0x3C 0xAC 0xEF 0x67 00111100 10101100 11101111 01100111
加密后0x75 0xE8 0xDC 0x64 01110101 11101000 11011100 01100100
这次的A B C D分别为0x3C 0xAC 0xEF 0x67
达内培训小编发现这不是固定的?WTF!
两组A B C D低4位的数字都是C C F 7
看来最终结果确实是xor计算来的,只是高4位的数值要复杂一些。
根据0 xor X =X的性质,我找了一组全0的加密前后的对比,
加密前0x00 0x00 0x00 0x00 00000000 00000000 00000000 00000000
加密后0xAC 0xEC 0xDF 0x57 10101100 11101100 11011111 01010111
那A B C D高4位就对应0xA 0xE 0xD 0x5
再用开头的数据验证:
加密前0x49 0x44 0x33 0x03 01001001 01000100 00110011 00000011
xor 0xAC 0xEC 0xDF 0x57 10101100 11101100 11011111 01010111
加密后0xE5 0xA8 0xEC 0x5411100101 10101000 11101100 01010100
还是不对,而且it培训机构小编发现一点:只要加密前的数的高4位=低4位,加密后的高4位都固定为0xA 0xE 0xD 0x5
这不就是xor中的4个数的高4位吗,由(0 xor X=X)和(X xor X=0)可知,高4位的算法应该是这样的:分别取输入数的高4位和低4位H,L,然后取xor的高4位I结果Y= H xor L xor I。关于给酷狗缓存kgtemp加密的知识,请点击昆明达内官网:http://km.tedu.cn