| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 173 人关注过本帖
标题:注册码的问题
只看楼主 加入收藏
chen3bing
Rank: 2
等 级:论坛游民
帖 子:325
专家分:99
注 册:2008-11-12
结帖率:91.21%
  已结贴   问题点数:10  回复次数:6   
注册码的问题



我们是做试验机的,为了防止客户不给钱,需要做个扣子,
比如软件先让客户用1个月,如果客户不给钱,软件就不能用了,上位机软件弹出一个窗口,
要求注册,要求提供授权码。然后如果客户给了钱,输入授权码,就可以继续使用产品。
可是这个如何实现呢?我的意思是,产品发到客户那里,上位机软件和下位机都在客户那里,
那个授权码怎么产生等一系列问题怎么解决?请大神告知,谢谢!
附件: 您没有浏览附件的权限,请 登录注册
搜索更多相关主题的帖子: 注册码  客户  软件  要求  授权码  
2019-07-05 08:38
chen3bing
Rank: 2
等 级:论坛游民
帖 子:325
专家分:99
注 册:2008-11-12
  得分:0 
有人说要联网,用服务器,那可太麻烦了。
不用服务器可以吗?
2019-07-05 10:38
pjtyzyq
Rank: 2
等 级:论坛游民
帖 子:161
专家分:78
注 册:2016-2-14
  得分:3 
根据设备ID按一定规则产生一个“申请码”显示在弹出窗口中,让用户将申请码发给你,在根据申请码按固定规则产生注册码发给用户,用户输入注册码后程序自动进行匹配。
2019-07-05 11:41
深秋2015
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:328
专家分:1292
注 册:2015-10-13
  得分:3 
不用服务器也可以,把到期时间写进注册表,不过容易被破解,用户修改了注册表就可以破解试用期限的限制。

服务器端限制是最可靠的,每次打开软件都要到服务端检测,过期或没注册的直接不让启动

从此以后我都不敢抬头看
仿佛我的天空失去了颜色
2019-07-05 11:45
chen3bing
Rank: 2
等 级:论坛游民
帖 子:325
专家分:99
注 册:2008-11-12
  得分:0 
回复 4楼 深秋2015
谢谢!到期时间我可以用下位机实现,那就可以不用服务器了吧?
2019-07-05 12:02
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:251
帖 子:4405
专家分:27025
注 册:2008-10-15
  得分:4 
如果下位机,一定是最新的时候,那时间可以用下位机实现。

注册码的话,弄一个自定义的编码规则,自己根据 设备ID(硬盘序号,或者什么硬件编号都可以)生成。
举一个例子:如定义一个 N位的字符串,然后把取的设备ID,按一定的规律,附加进去,或换掉指定位的字符,最终生成一个新的字符串
然后拿这个字符串,MD5(32)运算(或Hash),甚至可以把运算中的常量,自己换掉。
最后取其中的若干位,起始位置和长度自己定,不要写变量,写成全局变量或根据ID的某种规律来生成。
注册码的比较,也是一个问题,防爆破,一个是不要直接比较注册码,一个是加壳。但加壳会带来一个问题,容易被误报毒。
不直接比较注册码,一种思路,按字节做运算,确保正确时运算结果为0,然后最后把结果加起来,这个运算过程不能放在判断是否成立注册的位置,离的越远越好。保存到一个变量中去。然后在某些运算过程中,使用这个变量叠加进去。
如,某个过程初始化,
X=5
写成 X=5+变量
如果注册码完成相同,这个变量的值为0,得到了结果正确。
如果修改跳转,通过的验证,但因注册码不对,那么这个运算得到了 变量不为0,得到了X值就偏差很多了。
   如果X是画图的某个点的坐标,那么看到的结果就是这个点偏离正确的位置了。

以上都是自己的相法。没去实践过。


授人于鱼,不如授人于渔
早已停用QQ了
2019-07-05 13:12
chen3bing
Rank: 2
等 级:论坛游民
帖 子:325
专家分:99
注 册:2008-11-12
  得分:0 
注册码的比较,也是一个问题,防爆破,一个是不要直接比较注册码,一个是加壳。但加壳会带来一个问题,容易被误报毒。
不直接比较注册码,一种思路,按字节做运算,确保正确时运算结果为0,然后最后把结果加起来,这个运算过程不能放在判断是否成立注册的位置,离的越远越好。保存到一个变量中去。然后在某些运算过程中,使用这个变量叠加进去。
如,某个过程初始化,
X=5
写成 X=5+变量
如果注册码完成相同,这个变量的值为0,得到了结果正确。
如果修改跳转,通过的验证,但因注册码不对,那么这个运算得到了 变量不为0,得到了X值就偏差很多了。
   如果X是画图的某个点的坐标,那么看到的结果就是这个点偏离正确的位置了。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
谢谢版主。你说的我不太明白,还有那个加壳是什么意思?
2019-07-05 13:41







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028461 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved