2009-08-20 7 views
0

Мне нужно защитить программное обеспечение с помощью USB-ключа. Могу ли я просто запросить USB-накопитель с WMI и получить PnPDeviceId из класса Win32_DiskDrive и сравнить его с одним уже хэшированным и жестко закодированным в приложении? Насколько это безопасно? Можно ли изменить свойство PNPDeviceID? Аппаратная кодировка? Любая другая идея?Насколько безопасно создавать USB-ключ безопасности с помощью PnPDeviveID?

Логически USB-накопители будут тщательно отобраны.

Благодаря

ответ

1

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

Осторожно - очень дешевые USB-ключи не реализуют это, они просто отправляют случайный (?) Ключ при подключении, поэтому при вставке в разные порты они получают новый идентификатор.

+0

Спасибо за совет, USB-накопители будут выбраны тщательно и куплены мной. USB-ключ не является решением, потому что нам нужно также вставить часть приложения в него. – backslash17

+0

Я имел в виду, что планировал использовать дешевые USB-ключи 1Gb с их уникальным идентификатором вместо 50 долларов. Вероятно, это не так безопасно, но крекеры просто обойдутся в приложении в любом случае. –