wenqingli 发表于 2018-11-22 09:15:36

有没有兄弟了解USB设备的权限控制相关方案

本帖最后由 wenqingli 于 2018-11-22 09:56 编辑

        有个朋友托我做一个usb设备控制器,主要是用来管控接入的usb设备,对没有授权的设备会进行提示并禁止接入,授权的设备可以正常操作,该设备连接到电脑主机,所有设备都要通过这个东西才能接入,控制的设备有手机,u盘,移动硬盘等等,初步想了一个方案,就是通过单片机读取设备的id进行授权设备的记录,比如读取usb设备的id,授权设备可以通过电脑端的软件进行操作,然后经过授权的设备再次插入时,先判断id,若记录在案说明是授权的设备,再将设备切换到usb集线器芯片接口,允许其接入正常工作,因为没有做过相应的设备,想问下群里的兄弟这种方案有没有问题。

CoolBird007 发表于 2018-11-22 09:59:44

没有问题 ,HID类设备就可以了。。。还可以同时接256个设备(具体最多忘了,请查手册。)

caixiuwen 发表于 2018-11-22 10:19:06

有问题的。。还差一步,要检测断开。不然先接个授权设备,等通过后,马上换一个非授权设备。。。Full/Low speed的断开用单片机很好检测,High speed的你准备怎么检测断开?

caixiuwen 发表于 2018-11-22 10:33:09

哦,High speed也不用检测断开了。。。

asma 发表于 2018-11-22 11:09:58

可以,在枚举时候检查VID PID就可以。

elecfun 发表于 2018-11-22 12:20:59

不知道你的授权是什么范围,比如指定某个型号的U盘可以接入还是指定某个U盘接入。一般同款设备的PID/VID都是一样,如果还有其它唯一ID才可能指定某个设备的接入。

wenqingli 发表于 2018-11-22 12:52:01

@caixiuwen,谢谢提供的建议。
@elecfun,授权就是允许访问的意思,可以通过pc来读取写入,我查资料也发现PID/VID的相同的情况,在授权的时候在存储设备中写入一个固定文件,固定文件的内容是我生成的唯一ID,在设备再次接入时读取确认后再授权连接,不过这也存在问题,如果把这个文件考到另一个设备的话,也能访问,暂时没想到啥好办法

wye11083 发表于 2018-11-22 18:24:14

拆掉usb口是上上解。苹果usb权限这么复杂不照被黑。

laujc 发表于 2018-11-22 20:23:44

是不是可以参考银行的usb-key方案?有key时才允许使用相应功能

wenqingli 发表于 2018-11-24 09:33:27

@laujc,把key复制到一个有相同的pid和vid的设备上是不是又可以用了

huangqi412 发表于 2018-11-24 16:11:48

wenqingli 发表于 2018-11-22 12:52
@caixiuwen,谢谢提供的建议。
@elecfun,授权就是允许访问的意思,可以通过pc来读取写入,我查资料也发现PI ...

找厂家定做一批优盘似乎靠谱 其他优盘通通不让

wenqingli 发表于 2018-11-29 13:18:37

定做不太现实

wenqingli 发表于 2018-11-29 13:19:08

要求手机接入也要控制

telwin 发表于 2018-11-29 13:41:44

PC直接装个软件不行么?

wenqingli 发表于 2018-11-30 12:52:25

软件可以被卸载

dukelec 发表于 2018-11-30 14:26:17

不定做所有設備是做不到的,手機的話可能可以通過安裝特定的軟件來實現,但貌似也只能是手機廠商才有權限修改。整體方案建議參考蘋果做法,怕 key 被人從芯片中讀出的話,可以參考 pos 機的迷宮佈線保護,斷電自毀,你要想清楚是否需要這麼高的防護等級。一般企業防止員工非法拷貝數據是把電腦的文件系統加密,拷貝出去的文件在非公司電腦上查看是加密亂碼的。還有想說的是,病毒(驅動)級別的軟件可以做到無法卸載的。
页: [1]
查看完整版本: 有没有兄弟了解USB设备的权限控制相关方案