5

我最近实现了一个带有模糊匹配的硬件锁定许可系统,以处理硬件的变化而无需重新激活,但我需要更多的硬件来匹配以更安全/创建更可靠的模糊匹配。

现在我正在匹配以下内容:

  • 物理mac地址
  • 硬盘序列号
  • RAM 部件号/制造商/尺寸
  • 处理器 ID

在这种情况下,还有哪些其他特定于机器的不变硬件序列号可以很好地使用,并且可以从 C# 轻松检索。

检索此类硬件信息的代码示例也将受到赞赏。

澄清

当我说“不变”时,我的意思是硬件序列或不直接修改机器中的硬件就不会改变的信息。(IE,不会自行改变,也不会通过软件改变)

4

1 回答 1

4

在一家从事这种硬件指纹识别的公司工作过,我可以告诉你,商业替代品通常相当可靠,但在某些合法的情况下它们都会失败。

请注意,该领域的一些专利得到了非常积极的执行。一些提出硬件锁定算法的大型成功公司(如微软)已被成功起诉。如果你在你所做的事情上非常成功,那很可能会发生在你身上。

如果您觉得需要硬件锁定,请选择一家可以让您轻松为那些对其系统执行合法升级而最终打破模糊匹配规则的客户提供客户服务的公司。并且,准备好快速有效地提供该服务。

对于大多数用例,我会警告不要硬件锁定。它对您的软件设置了限制,这往往会妨碍您的合法客户使用该软件的合法愿望。

更新

除了您列出的指标之外,还有一些指标可以使用。我没有研究过哪些特别容易从 C# 获得,因为我在这个级别处理的大部分代码都是可移植的 C++,并根据需要带有一些特定于平台的程序集。

  • BIOS 校验和
  • 处理器的数量和类型(处理器 ID 不适用于所有处理器)
  • 显卡细节(经常升级的部分,但提供了一点额外的熵)
  • 连接的显示器数量、屏幕分辨率、品牌(经常变化,但又增加了一点熵)。
  • 安装的字体不寻常且差异很大(例如,忽略您从 Office 获得的字体等)
  • 所有已安装网卡的 Mac 地址(例如 WiFi、有线)
  • 所有已安装 HD的序列号
  • 枚举其他设备(例如 DVD、CD、内置读卡器)

请记住,笔记本电脑插入扩展坞,可能会获得许多额外的端口、新显示器等......

于 2012-09-23T19:25:32.420 回答