基于Java的独特计算机ID硬件

我需要从一台PC生成一个唯一的代码,我的软件将通过许可证分发,在本地我需要识别环境并将此代码发送到服务器。 我不想在服务器上保留一个序列号,每个客户端都接收到一些序列,我试图从NetworkInterfaces读取MAC地址,但是不安全,用户可以轻松更改MAC地址。 我认为如果它可以读取主板序列号的最佳方式,但直到现在我还没有找到方法。 任何消化?

你的软件值多少钱?

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

使用WMI在Windows机器上可以读取主板序列号

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

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

如果W域上的Windows XP域成员使用组策略,则WMI会被破坏。

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

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

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

不幸的是我不认为DLL正在使用Java,但至少它会告诉你一些关于什么是可靠的和什么不可靠的信息。