基于 Java 的唯一计算机 ID 硬件

2022-09-04 22:27:32

我需要从一台PC生成唯一的代码,我的软件将通过许可证分发,并且在本地我需要识别环境并将此代码发送到服务器。我不想在服务器上维护一个序列数字,每个客户端都收到一个序列的编号,我试图从NetworkInterfaces读取MAC地址,但并不安全,用户可以很容易地更改MAC地址。我认为如果可能的话,最好的方法是读取主板序列号,但我直到现在才找到方法。有什么要求吗?


答案 1

您的软件值多少钱?

目标市场盗版软件很多吗?

使用WMI可以在Windows盒子上读取主板序列号

使用 WMI 读取序列号 http://www.c-sharpcorner.com/UploadFile/GemingLeader/mb-sn-wmi08242009101325AM/mb-sn-wmi.aspx

使用 Java http://henryranch.net/software/jwmi-query-windows-wmi-from-java/ 中的 WMI

WMI 是/曾经是一个损坏的 Windows XP 域成员在 AD 域上,如果他们使用组策略。

(这只会影响XP的大多数企业用户,所以没什么大不了的)

希望这有帮助一点(MAC地址更简单...但很容易改变)


答案 2

MAC 地址不可靠。您应该瞄准无法更改此类CPU ID或HDD IDE ID的内容。我的意思是:http://www.soft.tahionic.com/download-hdd_id/index.html

不幸的是,我不认为DLL与Java一起工作,但至少它会向你显示一些关于什么是可靠的,什么是不可靠的信息。


推荐