SmartCard reader "Access denied" while claiming interface with Webusb on chrome -


i developing javascript library perform smart card operations using ccid protocol on chrome webusb api. goes when plug smart card reader on linux , macos, stuck on windows when try claim interface. tried run chrome administrator, disable smart card services / ccid drivers on windows in case claiming interface, nothing it. keep having "failed claim interface: access denied (insufficient permissions)" message. permission problem ? or windows service not aware of blocking access ?

edit: tried on mac, on reader didn't work. after removing specific vendor id / product id ccid driver info.plist, managed make work. suppose same problem happening on windows, ccid driver "blocking" access interface. alternatives ?

the device descriptor:

device descriptor:   blength                18   bdescriptortype         1   bcdusb               1.10   bdeviceclass            0 (defined @ interface level)   bdevicesubclass         0    bdeviceprotocol         0    bmaxpacketsize0         8   idvendor           0x1a44 vasco data security international   idproduct          0x0001 digipass 905 smartcard reader   bcddevice            1.02   imanufacturer           1 vasco   iproduct                2 dp905v1.1   iserial                 0    bnumconfigurations      1   configuration descriptor:     blength                 9     bdescriptortype         2     wtotallength           93     bnuminterfaces          1     bconfigurationvalue     1 iconfiguration          0      bmattributes         0x80   (bus powered) maxpower               50ma interface descriptor:   blength                 9   bdescriptortype         4   binterfacenumber        0   balternatesetting       0   bnumendpoints           3   binterfaceclass        11 chip/smartcard   binterfacesubclass      0    binterfaceprotocol      0    iinterface              0    chipcard interface descriptor:     blength                54     bdescriptortype        33     bcdccid              1.00     nmaxslotindex           0     bvoltagesupport         3  5.0v 3.0v      dwprotocols             3  t=0 t=1     dwdefaultclock       3700     dwmaxiumumclock      3700     bnumclocksupported      1     dwdatarate           9946 bps     dwmaxdatarate      318280 bps     bnumdataratessupp.     53     dwmaxifsd             254     dwsyncprotocols  00000007  2-wire 3-wire i2c     dwmechanical     00000000      dwfeatures       000404be       auto configuration based on atr       auto activation on insert       auto voltage selection       auto clock change       auto baud rate change       auto pps made ccid       auto ifsd exchange       short , extended apdu level exchange     dwmaxccidmsglen       272     bclassgetresponse    echo     bclassenvelope       echo     wlcdlayout           none     bpinsupport             0      bmaxccidbusyslots       1   endpoint descriptor:     blength                 7     bdescriptortype         5     bendpointaddress     0x81  ep 1 in     bmattributes            3       transfer type            interrupt       synch type               none       usage type               data     wmaxpacketsize     0x0004  1x 4 bytes     binterval              32   endpoint descriptor:     blength                 7     bdescriptortype         5     bendpointaddress     0x02  ep 2 out     bmattributes            2       transfer type            bulk       synch type               none       usage type               data     wmaxpacketsize     0x0010  1x 16 bytes     binterval               0   endpoint descriptor:     blength                 7     bdescriptortype         5     bendpointaddress     0x83  ep 3 in     bmattributes            2       transfer type            bulk       synch type               none       usage type               data     wmaxpacketsize     0x0010  1x 16 bytes     binterval               0 

the insight in edit correct, if ccid driver blocking access device chrome cannot access it. in addition on windows operating system must know load winusb.sys driver (which comes windows) against device or else userspace application such chrome cannot access it. can accomplished using inf file this one or adding microsoft os descriptors device set "compatible id" "winusb".

if building own device latter option preferable provide plug-and-play support users while former still requires manual installation step windows users.

if working existing device have control on windows system then, similar editing info.plist macos driver, can go windows device manager , replace existing driver winusb.sys using inf file above.


Comments

Popular posts from this blog

neo4j - finding mutual friends in a cypher statement starting with three or more persons -

php - How to remove letter in front of the word laravel -

minify - Minimizing css files -