如何限制应用程序只能从已知的 USB 闪存驱动器运行?
我需要一个仅从特定 USB 闪存驱动器运行的应用程序。 我使用 WMI Win32_Diskdrive 类和 PNPdeviceID 属性进行了一些测试。 使用这些数据将应用程序注册到许可证服务器(Web 服务)中是一个非常好的主意,但我正在寻找第二种方法来加强这一方法,以使该过程更难被破坏。
我正在考虑在驱动器中创建第二个小隐藏分区,并在其中找到通过 PNPdeviceID 或其他信息获得的序列名称。 任何其他想法、方法或建议都被接受。
提前致谢。
编辑:我已经知道 USB 闪存驱动器的唯一 ID,应用程序可以检查 Interfacetype 属性是否为“USB”。 我正在 Web 服务支持的许可证管理器中使用 PNPDeviceID 的哈希值注册应用程序。 我正在寻找额外的第二种验证方法。
I need an application to run only from a specific USB flash drive. I made some test with the WMI Win32_Diskdrive class and the PNPdeviceID property. It is a very good idea to enroll the application into a license server (web services) with this data, but I'm searching for a second method to reenforce this one in order to make the process harder to break.
I was thinking to create a second little hidden partition in the drive and locate in it as a name the serial obteined by the PNPdeviceID or other information. Any other idea, method or suggestion is accepted.
Thanks in advance.
EDIT: I already know a unique ID from the USB flash drive and the application can check if the Interfacetype property is "USB". I´m enrolling the application with a hash of the PNPDeviceID in a web-services suported licence manager. I'm searching for an additional second validation method.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以检查卷序列号,这将捕获到新格式化卷的随意复制,但不会检测完整字节精确的卷副本。
通过访问硬盘序列号来保护软件
有没有更快的方法来获取卷序列号?
You can check the volume serial number, which will catch casual copying to a newly formatted volume, but it won't detect full byte-exact volume copies.
To protect software by accessing harddisk serial no
Any faster method to get Volume Serial number?
您可以检查运行程序的驱动器类型:
You can check the type of drive from which the program is running :