请教:使用gethostid()实现软件License操作?

hintel 2002-06-12 09:50:23
(1)这个hostid是如何产生的?
(2)解释一下这个License操作的实现过程。
...全文
601 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hintel 2002-06-15
  • 打赏
  • 举报
回复
抱歉,按错键了。
继续前面的。
编译器CC是使用LICENSE,把它安装在服务器上,假设只有一个LICENSE,那它是怎么实现各个工作站在没有别的工作站使用CC时可以使用CC?
hintel 2002-06-15
  • 打赏
  • 举报
回复
我知道编译器CC是使用LICENSE
hintel 2002-06-14
  • 打赏
  • 举报
回复
这个License与serial number有什么不同呢?
sam55 2002-06-14
  • 打赏
  • 举报
回复
区别在于:
采用serial number方法的软件,可以安装到其他计算机上。这样就不能防止不诚实的用户多次安装,甚至非法复制。

而采用 HOSTID 的方法限制了用户只能在某一台机器上安装,运行软件。防止了非法复制。
sam55 2002-06-12
  • 打赏
  • 举报
回复
不同的操所系统对gethostid()的实现是不一样的。 Solaris 好象是CPU序列号, Linux则一般是IP地址。 Windows里没有这个函数。

我所知道的Licensing 软件,FlexLM,采用的是单向加密的方法。所谓单向加密简单说就是只能加密,不能解密。软件公司在销售软件时,会在软件里加入一个密匙。客户买到软件后,首先需要根据自己的host ID (由hostid 命令得到)获得一个License file. 这个License file 可以由软件公司根据客户提供的 Host ID, 用密匙加密生成一个,再发给客户,License file 包含 host ID 加密后生成的字段。在软件运行时,程序会调用gethostid(),并用密匙加密,再和License file里的字段进行核对。

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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