授权 USB 密钥的最佳方式是什么
我们的软件有自动更新功能,通过 USB 密钥安装(自动运行)。如果我想确保只使用授权的 USB 密钥,最好的方法是什么?
我们的安装程序已经签名,否则它将无法运行。但我更想检查 USB 密钥是否有签名的安装程序,如果它不存在,则忽略甚至“弹出”USB 设备。
我应该能够区分 USB 存储设备和相机或键盘之间的区别(在代码中)。
我只想禁用未经授权的存储设备。
谢谢你的想法。
We have an auto update for our software that is installed via USB key (with the auto run). If I wanted to ensure that only authorized USB Keys were used, what's the best way?
Our installer is already signed, and it won't run otherwise. But I'm more wanting to inspect the USB Key for a signed installer, and if it's not there, just ignore, or even "Eject" the USB device.
And I should be able to tell the difference (in code) between a usb storage device, and say a camera, or keyboard.
I'm only wanting to disable non-authorized storage devices.
Thank you for your ideas.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
未经授权的存储设备?这取决于您希望它的安全程度。对于最安全的级别,它将包括:
或者对于最不安全的级别,您有以下选项:
另外,对于“最安全”的选项,您确实需要一种比自动运行和设备驱动程序更安全的运行程序的方式(这可能是半生不熟的,可以做任何事情)出现授权)。为什么您希望它只从授权的闪存驱动器进行更新?
non-authorized storage devices? This depends on how secure you want it to be. For the most secure level, it would consist of:
Or to the least secure level you have these options:
Also, for the "most secure" option, you really need a more secure way of running the program than auto-run and a device driver(which could be half-baked to make anything appear authorized). Why do you want it to only update from an authorized flash drive anyway?
您或许能够读取 USB 驱动器的序列号(假设您获得的 USB 驱动器具有序列号;并非所有 USB 驱动器都有序列号)。然后,您的应用程序可以打电话回家获取最新的授权序列号列表,并检查是否存在匹配。
You might be able to read the USB drive's serial number (assuming you get USB drives that have serial numbers; not all do). Then your application could call home to get the latest list of authorized serial numbers, and check to see if there is a match.
Earlz 的反应很好,尽管我认为您不需要定制制造闪存驱动器...您只需要带有某种唯一固件加密标识符的闪存驱动器。或许 Kingston Data Traveller Line 中的某些功能可以解决问题。 (我从未真正使用过这些加密的 USB 记忆棒,所以我对实际的实现细节有点模糊)。
Earlz response is good, though I don't think you'd need custom manufacturing of flash drives... you would just need flash drives with some sort of unique firmware encrypted identifier. Perhaps something in the Kingston Data Traveler Line might do the trick. (I've never actually used one of these encrypted usb sticks, so I'm a bit foggy on the actual implementation details).