Я хочу создать хеш, который будет идентифицировать данную машину, как это сделать в Java? - PullRequest
2 голосов
/ 25 июля 2011

Я хочу сгенерировать хеш для данной машины, поэтому мое приложение будет работать только на этом конкретном компьютере.Мне нужно прочитать некоторые конкретные аппаратные идентификаторы, строки, серийные номера.И мне нужно сделать это в Java: / Я думаю, это будет сложно, есть идеи?И я знаю, что это «безопасность через неизвестность», но это просто должна быть простая защита (будут и другие, такие как подключение к главному серверу через SSL и т. Д.)

Ответы [ 3 ]

1 голос
/ 25 июля 2011

Отправной точкой для реального решения будет библиотека TPM для Java.

Это LGPL и его можно найти здесь http://trustedjava.sourceforge.net/.

Это гарантирует предоставление уникальногоключ для всех новых процессоров.

1 голос
/ 25 июля 2011

Класс NetworkInterface может использоваться для захвата таких вещей, как MAC-адреса и тому подобное.System.getProperty() также может быть использовано для получения информации об ОС и т.п.Конечно, оба эти значения могут быть изменены.

0 голосов
/ 25 июля 2011

Одна вещь, и она не уникальна, но все еще используется многими "менеджерами лицензий" - это имя хоста. Эта проверка может быть неудачной, и пользователи могут продолжать переключать имена своих компьютеров, но большинство пользователей слишком ленивы, чтобы сделать это.

Inet4Address.getLocalHost().getCanonicalHostName();

Введите это имя в файл лицензии (если вы создаете что-то вроде лицензии), а затем подпишите «документ».

...