KeyFansClub

首页 » - 特色讨论区 - » 键社茶餐厅 » fish做的那个加密工具挺有意思,我也来做一个玩玩(有神秘礼物附赠)
希德船长 - 2005/8/28 20:54:00
仿照fish那个做的,只是第i*5位字符我不知道fish的那个是怎么生成的,没看出来。

[URL=upload/KFCFile5899_63e9753de56d03fa.exe]Str2XD改[/URL]

[URL=upload/KFCFile5900_aa8b305df5097a15.rar]神秘的压缩包[/URL]

解压密码:
XDXDXXXDDDXDXDDDDXDDDDDXXXDDDDDDDXXDDDDDDDDXXDDDDDDDDXXDDDDDDDDXXDDDDDDDDXXXDDDDXDDX

附上我大致的分析过程:[IMG=upload/KFCFile5902_014608ac50f6c1eb.jpg]上传文件5902[/IMG]
03534 - 2005/8/28 21:03:00
船长做的程序某个RP极低的人总是用不了……  T-T

说是缺少MFC42D.dll……………………
fish - 2005/8/28 21:20:00
[URL=upload/KFCFile5898_Str2XD.rar]上传文件5898[/URL]
文件的原码
每一个单字节字符由10个位组成,分两组,如:
a的ASCII码是0x61,
因为它不是双字节字符,所以开头标0
6(10)的二进制是0110
1(10)的二进制是0001
加上开头的标识码,就是001100001
最后面的4位是起检查作用的,类似于CRC
最后把1换成X,0换成D

详细可以看原码
985ch - 2005/8/28 21:21:00
那是用MFC编写的东西吧……总共应该缺以下3个文件:
MFC42D.DLL
MFCO42D.DLL
MSVCRTD.DLL
这几个文件是运行用VC编写的MFC文件的必备文件……
希德船长 - 2005/8/28 21:26:00
这次行了,不用那些DLL也能运行了。

还有,即使是双字节,也有原来的最高位作为标志啊,ASCII的最高位是0,汉字都是1。所以如果是还原为字符串的话,应该不用另加标志位吧?
fish - 2005/8/28 21:44:00
以下引用希德船长在2005-8-28 21:26:30的发言:
这次行了,不用那些DLL也能运行了。

还有,即使是双字节,也有原来的最高位作为标志啊,ASCII的最高位是0,汉字都是1。所以如果是还原为字符串的话,应该不用另加标志位吧?

后来发现还原也不用标志位的,懒得改了 :D
BTW:用Release方式来编译程序会小很多
Rinrin - 2005/8/29 1:06:00
不错
能不能写一个XD2Str?
fish - 2005/8/29 1:13:00
以下引用Rinrin在2005-8-29 1:06:38的发言:
不错
能不能写一个XD2Str?

http://www.keyfc.net/bbs/disp.asp?titleid=10594
在这里面仔细找找,有一个附件的
Str <-> XD
互相转化
Rinrin - 2005/8/29 1:25:00
心眼贴啊
好在已经有提示了
........
1
查看完整版本: fish做的那个加密工具挺有意思,我也来做一个玩玩(有神秘礼物附赠)