什么是产生C ++是不容易欺骗性(具有例如改变MAC地址)?

在Microsoft Windows中的唯一硬件ID的最佳方式
有帮助吗?

解决方案

视窗在每台机器存储一个唯一的GUID在注册表中:

HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\MachineGuid

其他提示

这曾经是CPU序列号,但今天有许多类型的主板,该因子是不准确的。 MAC地址可以容易地伪造。这给我们留下了内置硬盘的序列号。另请参见: HTTP://www.codeproject。 COM /文章/ 319181 / Haephrati-搜索换一个可靠的五金-ID

有多种“技巧”,但唯一真正的“物理的答案”是“不,不存在解决方案。”

一个“机器”只不过是一个无源总线更周围一些硬件。 虽然每一块铁可以提供某种方式使用标识符,每一块铁可以通过任何坏的或好的原因,你永远不能完全了解的(所以如果你在此基础上的功能,您可以创建问题,用户更换您的用户,并且因此-as一个consequence-自己每当硬件已被替换的时间/重新初始化/重新配置等等)。

现在,如果你的问题是找出一台机器的情况下,许多机器都一起互操作,这是通过MAC或IP地址或主机名以及发挥了作用。但要他们不是在很长一段时间,期间必然不断准备的想法(这样就可以避免硬编码它们 - 而不是“发现,然后”在任何你的启动的)

如果你的问题是-instead-识别软件实例或许可,您有可能更好地专注于另一种解决方案:你卖许可证“用户”(这是有足够的资金,而不是他的电脑用户!),而不是他们的“机器”(即用户必须能够自由地改变时,他们需要/像未经您的许可,因为你din't许可硬件或操作系统...),所以你的问题不是识别机,但是用户(考虑到在同一机器可能是许多用户一台主机和一个相同的用户可以在各种机器的工作...,你不能假定/并处1:没有运行到某种关系1,的早晚的问题,当发现没有更适合这个成语IFS)。

在想法应该是注册用户以稍微可达网站,给他们你生成密钥,并检查同一用户/密钥对没有CON-暂时下一个给定的时间周期使用比倍商定数量更。当违例超出,或键变得陈旧,只是阻止并等待用户更新。

正如你所看到的,答案主要取决于你的问题背后的原因,不是从问题本身。更多

有分配给硬件各种ID可以读取和组合,以形成机键。例如,你可以让硬盘驱动器,其中软件存储,在PROC ID等。有些可以比其他人更容易设定的ID,但实力的一部分,是在多件组合在一起不一定本身足够强。

下面是一个程序(也可作为 DLL ),可以读取和显示你的电脑/硬件ID: HTTP: //www.soft.tahionic.com/download-hdd_id/index.html

使用的Win32系统HDS的API。 不要读取注册表,它没有任何意义的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top