龙卷风收音机电台数据解密算法
fuyun
2009-08-14
最新说明:
因部分原因,最新版本cradio的加密算法已变更,如需按下述算法进行实现,还需使用之前的版本(7月前的). 该算法的实现已公布在本人je blog中. 龙卷风收音机data\chs下的文件:(可到官网上下载客户端,在目录下面就可以找到了,也可以直接在本文附件里下载) 说明:原先上传的文件漏了data.idp,现已修改. 另:在csdn上,已找到该解密算法的java实现,有兴趣者可以访问本人的csdn,待抽空再做整理,移至JavaEye.敬请期待! data.dat 电台url, 加密形式 data.idp 每一个电台在data.dat中位置信息 data.idp 00000000h: 0000 0000 6300 0000 C800 0000 3001 0000 00000010h: B101 0000 1502 0000 7702 0000 D902 0000 00000020h: 4003 0000 A703 0000 0704 0000 9204 0000 .... 其中每4 bytes为一个位置,则电台的位置就是: 电台1 0x00000000 ~ 0x00000063 电台2 0x00000063 ~ 0x000000C8 电台3 0x000000C8 ~ 0x00003001 .... data.dat 电台1 0x00000000 ~ 0x00000063的数据是: 00000000h: 3109 BCB9 D7A5 B5DC A390 678F A1BC AF60 00000010h: B88F DA88 63BF BE8E 887B 63BF BE91 A77B 00000020h: 5860 5A56 5040 2160 6756 0B06 1E19 5470 00000030h: 4C11 0200 003E 4D11 041B 403C 0D7B 6304 00000040h: 032C 595D 455B 5F6E 4D4A 5347 5C6D 565C 00000050h: 5B59 5A70 001C 1858 5105 2B24 050B 5C6A 00000060h: 0D0D 0A 从开始位置找到第一个09 (\t),后面的数据都是加密形式的。加密的算法是每6个字节分别和字符j,i,n,_,c,r来进行xor运算。(05年的版本是4个字符l,o,n,g,最新版本的还是在费了一些时间之后才找出来的~:P ) 例如: BC B9 D7 A5 B5 DC A3 90 67 8F A1 BC AF 60 ... xor j i n _ c r j i n _ c r j i ... = D6 D0 B9 FA D6 AE C9 F9 09 D0 C2 CE C5 09 ... = 中 国 之 声 新 闻 ... 这样每一个电台的数据就出来了 详细例子:(文字显示格式有点出入,想要看整齐的,请参阅附件里的文本文档) 31 09 BC B9 D7 A5 B5 DC A3 90 67 8F A1 BC AF 60 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 D6 D0 B9 FA D6 AE C9 F9 09 D0 C2 CE C5 09 中 国 之 声 新 闻 B8 8F DA 88 63 BF BE 8E 88 7B 63 BF BE 91 A7 7B 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 D6 D0 B9 FA 09 D6 D0 D1 EB 09 09 D6 D0 CE C4 09 中 国 中 央 中 文 58 60 5A 56 50 40 21 60 67 56 0B 06 1E 19 54 70 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 6E 5F 32 09 34 09 33 32 4B 09 09 09 68 74 74 70 3A 2F 2 4 3 2 K h t t p : / 4C 11 02 00 00 3E 4D 11 04 1B 40 3C 0D 7B 63 04 63 72 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 2F 63 68 69 6E 61 2E 63 6E 72 2E 63 6E 09 09 6D / c h i n a . c n r . c n m 03 2C 59 5D 45 5B 5F 6E 4D 4A 53 47 5C 6D 56 5C 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 6D 73 3A 2F 2F 32 31 31 2E 38 39 2E 32 32 35 2E m s : / / 2 1 1 . 8 9 . 2 2 5 . 5B 59 5A 70 00 1C 18 58 51 05 2B 24 05 0B 5C 6A 6A 69 6E 5F 63 72 6A 69 6E 5F 63 72 6A 69 6E 5F 31 30 34 2F 63 6E 72 31 31 3F 5A 48 56 6F 62 32 1 0 4 / c n r 1 1 ? Z H V o b 2 0D 0D 0A 63 72 6A 6E 7F 60 n ` / 说明: 第一行为源数据,第二行为jin_cr,第三行为XOR运算结果,第四行为运算结果转换成字符后的结果. |