首页
社区
课程
招聘
[求助]关于如何防止共享软件被破解的想法
发表于: 2012-1-26 10:34 12245

[求助]关于如何防止共享软件被破解的想法

2012-1-26 10:34
12245
大家好,我想问一个关于共享软件防破解的问题,由于以前没有这样的经验,昨天晚上看了大量的防破解的方法,结果很让人绝望,因为防破解是在是太难了。但是从目前来看,大多数人都说网络验证比较好一些,所以我也打算这么做,具体的想法是这样:

程序方面(c#语言编写),只做一个代码混淆就行了,程序启动后,连接服务器先做注册码验证,注册码是直接写到程序里再给客户的,然后同时提取本机硬件特征码(如硬盘ID)去服务器认证。

服务器方面:服务器首先接收认证注册码,如果数据库里没有这个,则没注册,就不发回关键代码给程序,程序也不能使用。如果存在这个注册码,则检查硬件id,如果这个和上次的不一样,则认定程序不是在上回的机器上启动的,写入数据库并做记录,每个注册码允许在3台不同的机器上启动,如果超过3台了,则将这个注册码作废。

主要的思路就是这样,程序里的几个关键代码都是去服务器认证后获取的,如果没有这几个代码,程序就不能运行,不知道这样行不行,希望大家给点意见。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 247
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
关键代码你怎么保护的 他先购买一套认证成功 然后拿你认证好的关键代码 和软件去到其他机子运行 或者直接破解 是不是也可以啊
2012-1-26 12:28
0
雪    币: 210
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
拿到注册码以后,直接 Patch 机器码就可以了
2012-1-26 12:36
0
雪    币: 453
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不写程序永远不被破解
2012-1-26 12:47
0
雪    币: 76
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
本地验证+网络验证吧
先用vmp或者se下
网络那边加个随机数,防止本地模拟。
2012-1-26 16:06
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
关键代码不是说只第一次启动验证一次就完事了,而是每次启动都必须从服务器获取。可以设置1个或者2个,比如我要写的程序的关键代码是正则,把这个正则加密后发送给程序,程序必须要有这个正则才能正常运行。也就是说离开网络程序就不能运行。要想破解就只有一个法,就是解密这个加密后的数据,然后反编译程序,将代码加进去,或修改验证地址为自己的。
2012-1-26 16:20
0
雪    币: 215
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
呵呵,这个标题有些问题。改为“如何加大共享软件被破解的难度”可能更合适!
2012-1-26 16:53
0
雪    币: 154
活跃值: (560)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
8
加虚拟混淆挡住了大多数不会虚拟混淆的看客,缺丰厚了大阔的腰包。
再怎么做,代码一到本地就被剽窃了,防不住。搞点c/s架构增加点破解时间,似乎比较通用。
2012-1-26 22:39
0
雪    币: 270
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
关键不是你服务端怎么写,你客户端是怎么写的?怎么验证机器的唯一性?机器码?如果你机器码的话,PATCH机器码,你服务端就被欺骗了啊!
2012-1-27 10:51
0
雪    币: 247
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
比如破解人有一个正确的注册码 程序已经得到关键代码 成功运行了 破解者就把这时候的程序导出 然后改成本地验证 怎么办
2012-1-27 14:55
0
雪    币: 2401
活跃值: (1402)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
可以采用【云计算】试试。
2012-1-30 17:13
0
雪    币: 215
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
有矛就有盾,没有最强最厉害的防护措施,即使有,也会有一个最牛X,最YD的破解方法。安全最终的目的不是防住所有的人,而是能防住绝大部分的人。与其在反破解上下太大的功夫,还不如努力将程序做好。很多软件,免费版,收收广告费也可以赚不少,当然要防止被一个南极的动物盯上。
2012-1-30 19:20
0
雪    币: 3277
活跃值: (1992)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
楼上的,你错了,应该是有盾必有矛。而不是先有矛,才有盾的。

就是因为有太厉害的盾,才会让人想发明一个可以摧毁一切的矛。
2012-1-30 21:35
0
雪    币: 2882
活跃值: (1267)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yjd
14
就是因为有太厉害的盾,才会让人想发明一个可以摧毁一切的矛。

事实是不可能...这个问题永久存在.
2012-2-4 11:18
0
雪    币: 3
活跃值: (46)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
写个模拟服务端
2012-2-6 15:55
0
雪    币: 603
活跃值: (40)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
16
围观的。。。。。
2012-2-6 16:38
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
12楼的说得不错。

只要不是行业专用的软件,还是把主要的功夫放在软件功能和用户体验上吧,免费软件也不是没有办法盈利,盈利多的免费软件多的是。
2012-2-9 12:47
0
游客
登录 | 注册 方可回帖
返回
//