给软件加入注册码验证功能,寻求解决方案!

pfworld 2013-06-27 02:19:26
现在做一款运行在局域网内的程序,客户端运行不同软件,同一数据库。

1、得到用户计算机机器码(硬盘呀、网卡呀等)
2、通过机器码生成器生成注册码
3、第一次软件运行时录入注册码,把注册码写入到数据库
4、每次运行软件读取数据库注册码,解密判断注册码内包含的信息和用户注册信息是否一致,不一致提示用户重新注册。

现在有疑问,把注册码放到数据库好呢还是放到本地生成支注册文件好点?或者还有其他方法?

使用硬盘C盘ID,和网卡MAC做机器码是否合适?
...全文
719 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pfworld 2013-08-06
  • 打赏
  • 举报
回复
客户计算机是没有网络的,想生成“D64GG-GXY6T-V6FTR-WCPBB-2YDYB”这种要是的注册吗,和验证码!这样比较简单,可以发短信给客户,普通的太长容易输错。
gwy9008 2013-06-27
  • 打赏
  • 举报
回复
我是这样做的, 管他什么硬件统统读取一通, 买了个60块一年的网站空间, 还赠送了个数据库, 这个空间上运行着一个webservice 客户端启动的时候,获取到自己的硬件码, 然后调用webservice上的方法验证这个硬件码的剩余时间, 然后返回 客户端根据这个返回值执行下一步操作
pfworld 2013-06-27
  • 打赏
  • 举报
回复
目前有一点问题: 数据库计算机上安装主要运行软件,还有其他计算机上安装管理软件,这个模式的注册如何做呢? 是只验证数据库计算机,管理软件就不好进行验证了,因为用户安装管理软件的计算机可能发生变化!
吴青峰 2013-06-27
  • 打赏
  • 举报
回复
把注册码放到哪里,是根据自己的需求,如果你今后不对注册码进行管理,当然可以放在本地,否则最好放到数据库。 硬盘C盘ID,和网卡MAC做机器码勉强可以。但是这些注册码今后都有可能发生改变。
threenewbee 2013-06-27
  • 打赏
  • 举报
回复
反正硬盘id、主板id、mac地址这些都可以伪造。一切硬件特征在虚拟化的时代都可以用软件模拟出来。 你做的也就是防君子而已。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧