如何唯一标识一台计算机?

66

我正在为一个客户开发一些桌面软件以供转售。客户希望限制软件,使注册码只能用于一个特定的计算机。

除了使用网络卡的MAC地址外,还有没有其他技术(适用于Windows和Mac OS X),可以唯一地识别一台计算机?


11
不要使用MAC地址作为识别标志。不仅网络适配器可能会更换,而且在Windows中通过设备管理器很容易更改MAC地址。 - TheAgent
14个回答

1

或者你可以没有激活码,确保在最终用户许可协议中写入审计权,并随时行使审计权。

这对于Oracle非常有效。


1
如何对任何带有固定SN(序列号)的设备,例如硬盘、处理器、内存等进行哈希处理?这个哈希值将一直伴随着计算机,直到它的部件被更换。

1

以前CPU上曾经印有序列号,但据我所见,这些信息(PSN,奔腾序列号)已被弃用。这些信息可能仍然存在,但至少在P3时代已经消失了。此外,我认为应该考虑使用NIC上的MAC地址作为主机使用的主要接口的明显选择。除非您的客户不希望在他们销售的主机上出现以太网接口。


我相信几乎所有发货的盒子默认情况下都禁用了CPU序列号。 - Michael
是的,处理器序列号今天肯定行不通了,即使当时发布该功能时,它也存在缺陷且不受欢迎。 - Nicholas Head
另外的要求是 - 在 OS X 上工作可能意味着在 PPC 上工作。 - Vasil

1
你可以考虑使用第三方许可证工具,这样更有可能做到“正确”,并为您(或客户)提供其他选项,以应对需求变化(而需求总是在变化的)。我想具体提及一些名称,但实际上我对它们并不十分熟悉。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接