首页
社区
课程
招聘
[求助].net算法问题
发表于: 2009-6-28 23:22 6725

[求助].net算法问题

2009-6-28 23:22
6725
程序未被混淆,已经知道程序启动时通过检测目录下是否有RegUser1.zcs文件来判断是否注册,有则标题显示已注册。
检测代码在private void Main_Frm_Load(object sender, EventArgs e)中。

虽然伪造一个文件会显示已注册,但搞不清它里面的算法,运行程序照样会出错。哪位帮忙看看

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
另外补充下:据我分析RegUser1.zcs里的内容是生成的机器码和目录下uesr.txt内的账号加密生成的,在软件界面点载入帐号,会通过一个解密算法解密出账号导入到软件内,现在关键是搞清楚它怎么加解密的
2009-6-28 23:59
0
雪    币: 93
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
我来说这个程序的加密原理吧。
这个程序的加密思想很巧妙,当没有RegUser.zcs文件时,程序会读取user.txt的文件作为登陆帐号。当有RegUser.zcs文件时候,程序会读取RegUser.zcs文件作为登陆帐号。当然这个RegUser.zcs文件是经过加密的。
换一句话说,就是对user.txt文件进行了加密。所以如果要让程序跑起来,那么解密后RegUser.zcs文件应该和User.txt是一样的。

好了,附上一个KeyGen。左侧填写用户名,右侧填写密码,点击生成,会生成两个文件,然后将这两个文件拷贝到原始程序目录下运行,即可。注意用户名和密码的数量要保持一致!!!!!!如果提示不一致,可以检查是否多了一个换行符。

为了最大可能的维护原作者利益,我加了混淆。不好意思。

另外这个keygen,只适合当前使用的计算机,如果换了一台计算机,必须重新使用keygen生成文件。这个算法不难,有兴趣的朋友,可以尝试改进。

安全起见,附件删掉~下班后,在简单的说些算法
2009-6-29 01:00
0
雪    币: 290
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
tease太强了
2009-6-29 09:20
0
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
很感谢 的确可用

它加解密的原理的确是这样 的确很巧妙 我也能分析出来 但就不知道关键加解密代码在哪 它好像是利用标准加解密函数来加解密的 不知生成的那个机器码有何用
2009-6-29 09:22
0
雪    币: 337
活跃值: (74)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
6
晕死!给个程序或dll啊!楼上的两位在神交中就搞定了,让大家也看看呗。
2009-6-29 18:52
0
雪    币: 324
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
7
楼上说话挺风趣的,哈哈.
2009-6-29 20:08
0
雪    币: 1450
活跃值: (35)
能力值: (RANK:680 )
在线值:
发帖
回帖
粉丝
8
非常有默契,都把附件删了, 呵呵~
2009-6-29 21:04
0
雪    币: 8226
活跃值: (3371)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
来晚了什么都看不见
2009-6-29 22:21
0
雪    币: 93
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
我是看板规中第18条说不能发注册机啊,而且是国产的软件的注册机,怕我的ID被Ban了而已。

第18条 严禁散发共享软件或行业软件等编译后的注册机和破解程序 (软件安全辅助工具除外),欢迎来这交流技术。


To:搂主
系统生成的那个机器码在SymmetricMethod类中的 GetLegalKey()方法中调用了。而 GetLegalKey()是解密算法中一部分。
2009-6-29 22:22
0
雪    币: 8226
活跃值: (3371)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
分析下算法或者做个动画演示如何提取源码做注册机应该没事的。。。。。
2009-6-30 01:40
0
雪    币: 93
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
这样可以吗?主要考虑是国产软件,我先去问问版主先,如果可以下次开始写算法分析。
2009-6-30 09:44
0
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
To:搂主
系统生成的那个机器码在SymmetricMethod类中的 GetLegalKey()方法中调用了。而 GetLegalKey()是解密算法中一部分。[/QUOTE]

基本上明白是怎么回事了
Encrypto( ) 加密

Decrypto( )进行解密,GetLegalKey()返回密钥

不知对否
2009-6-30 11:03
0
雪    币: 93
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
正解,写注册机很Easy吧!
2009-6-30 11:08
0
雪    币: 1450
活跃值: (35)
能力值: (RANK:680 )
在线值:
发帖
回帖
粉丝
15
to tease:
不用问斑竹了,
2009-6-30 11:12
0
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
有思路了那就很easy了Thanks
只是机子还没装VS
这软件注册了功能也不行 估计软件得更新了
2009-6-30 11:26
0
游客
登录 | 注册 方可回帖
返回
//