我已经开发了我要保护与授权的软件。 到目前为止,我已经得到了使用硬件组件的详细信息,以产生对每一台机器的唯一ID码。 那么我可以允许对一个单一的连续按键5台机器的激活(每证5台机器是我卖什么)。
这一切工作正常,但显然只在具有互联网连接的机器。 这只是这种保护的限制,并没有什么我可以做些什么? 或者是我有办法可以解决这个问题?
注:在这一点上,在这个线程,我不开关于我已经生成的唯一ID的方式来批判,这是我所选择的方法,而不是无知,需要几棍原因。
我已经开发了我要保护与授权的软件。 到目前为止,我已经得到了使用硬件组件的详细信息,以产生对每一台机器的唯一ID码。 那么我可以允许对一个单一的连续按键5台机器的激活(每证5台机器是我卖什么)。
这一切工作正常,但显然只在具有互联网连接的机器。 这只是这种保护的限制,并没有什么我可以做些什么? 或者是我有办法可以解决这个问题?
注:在这一点上,在这个线程,我不开关于我已经生成的唯一ID的方式来批判,这是我所选择的方法,而不是无知,需要几棍原因。
我觉得你有几种选择:
执行某种自检:每个正在运行的实例发送其唯一ID到网络中,进而侦听其他正在运行的实例的唯一ID。 其通过网络接收到四个以上的唯一ID一审自行关闭。 我想这可能使用UDP广播来实现。 执行这不是小事:
如果我要实现类似的东西,我会介绍以下三种封装类型:
在任何情况下,你应该想想编码允许实例的数量成键,这样你就可以在以后分发不同尺寸的按键。
使它成为一个需要有中央授权服务器。 在启动每个程序与服务器注册。 服务器告诉客户,如果它可以启动与否。 在5个程序的情况下已经启动,该计划拒绝启动。
程序停止时,它再次告诉许可服务器,它是不需要许可证的任何更长的时间。
任务完成。 无需网络。