3

I am installing the I2CTools USB-to-I2C Elite driver for Win 10 x64, but I got a dialog saying ”Jungo Connectivity: a digitally signed driver is required.”

In device manager the two drivers JungoConnectivity WinDriver1251 and USB-to-I2C Elite drivers are marked with yellow triangles and Details says: Not digitally signed.

I have tried on two different Win 10 machines as well as a virtual Win 7 machine and get the same error. The PCs are set up with my company's IT policies.

I can only get the drivers to work by starting Windows with Device driver verification turned off permanently.

According to the vendor the drivers are signed, and the security catalog file usbtoi2c_elite.cat shows that the certificates are recognized by Windows.

Why is Windows reporting this error? Is there any way to get the drivers to work without disabling driver signature verification completely?

Here are the logs from first installing the drivers, then plugging in the USB device:

> >>>  [Setup Import Driver Package - C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.inf]
> >>>  Section start 2018/09/04 15:10:04.303
>       cmd: "C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\wdreg_gui.exe" -inf windrvr1251.inf install
>      inf: Provider: Jungo Connectivity
>      inf: Class GUID: {c671678c-82c1-43f3-d700-0049433e9a4b}
>      inf: Driver Version: 10/31/2017,12.5.1
>      inf: Catalog File: windrvr1251.cat
>      sto: {Copy Driver Package: C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.inf}
> 15:10:04.364
>      sto:      Driver Package = C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.inf
>      sto:      Flags          = 0x00000007
>      sto:      Destination    = C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}
>      sto:      Copying driver package files to 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}'.
>      flq:      Copying 'C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.cat' to
> 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.cat'.
>      flq:      Copying 'C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.inf' to
> 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.inf'.
>      flq:      Copying 'C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\windrvr1251.sys' to
> 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.sys'.
>      sto: {Copy Driver Package: exit(0x00000000)} 15:10:04.524
>      pol: {Driver package policy check} 15:10:04.649
>      pol: {Driver package policy check - exit(0x00000000)} 15:10:04.655
>      sto: {Stage Driver Package: C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.inf}
> 15:10:04.674
>      inf:      {Query Configurability: C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.inf}
> 15:10:04.717
>      inf:           Driver package 'windrvr1251.inf' is configurable.
>      inf:      {Query Configurability: exit(0x00000000)} 15:10:04.734
>      flq:      Copying 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.cat'
> to
> 'C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.cat'.
>      flq:      Copying 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.inf'
> to
> 'C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.inf'.
>      flq:      Copying 'C:\Users\LPEDER~1\AppData\Local\Temp\{e2f7d203-b67d-eb4c-b7b0-d9ac0e33f8b3}\windrvr1251.sys'
> to
> 'C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.sys'.
>      sto:      {DRIVERSTORE IMPORT VALIDATE} 15:10:04.885
>      sig:           {_VERIFY_FILE_SIGNATURE} 15:10:05.098
>      sig:                Key      = windrvr1251.inf
>      sig:                FilePath = C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.inf
>      sig:                Catalog  = C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.cat
> !    sig:                Verifying file against specific (valid)
> catalog failed. !    sig:                Error 0x800b0109: A
> certificate chain processed, but terminated in a root certificate
> which is not trusted by the trust provider.
>      sig:           {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 15:10:05.333
>      sig:           {_VERIFY_FILE_SIGNATURE} 15:10:05.339
>      sig:                Key      = windrvr1251.inf
>      sig:                FilePath = C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.inf
>      sig:                Catalog  = C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}\windrvr1251.cat
>      sig:                Success: File is signed in Authenticode(tm) catalog.
>      sig:                Error 0xe0000241: The INF was signed with an Authenticode(tm) catalog from a trusted publisher.
>      sig:           {_VERIFY_FILE_SIGNATURE exit(0xe0000241)} 15:10:05.483
>      sto:      {DRIVERSTORE IMPORT VALIDATE: exit(0x00000000)} 15:10:05.554
>      sig:      Signer Score = 0x0F000000
>      sig:      Signer Name  = Jungo Connectivity Ltd.
>      sto:      {DRIVERSTORE IMPORT BEGIN} 15:10:05.612
>      sto:      {DRIVERSTORE IMPORT BEGIN: exit(0x00000000)} 15:10:05.620
>      cpy:      {Copy Directory: C:\Windows\System32\DriverStore\Temp\{f0750f9b-44d4-8643-bbe9-ffec9f8c333b}}
> 15:10:05.628
>      cpy:           Target Path = C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b
>      cpy:      {Copy Directory: exit(0x00000000)} 15:10:05.710
>      idb:      {Register Driver Package: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf}
> 15:10:05.738
>      idb:           Created driver package object 'windrvr1251.inf_amd64_cfd33c661949720b' in DRIVERS database node.
>      idb:           Created driver INF file object 'oem81.inf' in DRIVERS database node.
>      idb:           Registered driver package 'windrvr1251.inf_amd64_cfd33c661949720b' with 'oem81.inf'.
>      idb:      {Register Driver Package: exit(0x00000000)} 15:10:05.799
>      idb:      {Publish Driver Package: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf}
> 15:10:05.805
>      idb:           Activating driver package 'windrvr1251.inf_amd64_cfd33c661949720b'.
>      cpy:           Published 'windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf' to
> 'oem81.inf'.
>      idb:           Indexed 2 device IDs for 'windrvr1251.inf_amd64_cfd33c661949720b'.
>      sto:           Flushed driver database node 'DRIVERS'. Time = 46 ms
>      sto:           Flushed driver database node 'SYSTEM'. Time = 16 ms
>      idb:      {Publish Driver Package: exit(0x00000000)} 15:10:05.920
>      sto:      {DRIVERSTORE IMPORT END} 15:10:05.930
>      dvi:           Flushed all driver package files to disk. Time = 15 ms
>      sig:           Installed catalog 'windrvr1251.cat' as 'oem81.cat'.
>      sto:      {DRIVERSTORE IMPORT END: exit(0x00000000)} 15:10:06.161
>      sto: {Stage Driver Package: exit(0x00000000)} 15:10:06.183 <<<  Section end 2018/09/04 15:10:06.235 <<<  [Exit status: SUCCESS]
> 
> [OMITTED]
> 
> >>>  [Device Install (UpdateDriverForPlugAndPlayDevices) - *WINDRVR1251]
> >>>  Section start 2018/09/04 15:10:06.571
>       cmd: "C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\wdreg_gui.exe" -inf windrvr1251.inf install
>      ndv: INF path: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf
>      ndv: Install flags: 0x00000001
>      ndv: {Update Device Driver - ROOT\JUNGO\0000}
>      ndv:      Search options: 0x00000080
>      ndv:      Searching single INF 'C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf'
>      dvi:      {Build Driver List} 15:10:06.630
>      dvi:           Searching for hardware ID(s):
>      dvi:                *windrvr1251
>      dvi:           Created Driver Node:
>      dvi:                HardwareID   - *WINDRVR1251
>      dvi:                InfName      - c:\windows\system32\driverstore\filerepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf
>      dvi:                DevDesc      - WinDriver1251
>      dvi:                Section      - DriverInstall.NT
>      dvi:                Rank         - 0x00ff0000
>      dvi:                Signer Score - Authenticode
>      dvi:                DrvDate      - 10/31/2017
>      dvi:                Version      - 12.5.1.0
>      dvi:      {Build Driver List - exit(0x00000000)} 15:10:06.815
>      dvi:      {DIF_SELECTBESTCOMPATDRV} 15:10:06.821
>      dvi:           Default installer: Enter 15:10:06.827
>      dvi:                {Select Best Driver}
>      dvi:                     Class GUID of device changed to: {c671678c-82c1-43f3-d700-0049433e9a4b}.
>      dvi:                     Selected Driver:
>      dvi:                          Description - WinDriver1251
>      dvi:                          InfFile     - c:\windows\system32\driverstore\filerepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf
>      dvi:                          Section     - DriverInstall
>      dvi:                {Select Best Driver - exit(0x00000000)}
>      dvi:           Default installer: Exit
>      dvi:      {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)} 15:10:06.888
>      ndv:      Force Installing Driver:
>      ndv:           Inf Name       - oem81.inf
>      ndv:           Driver Date    - 10/31/2017
>      ndv:           Driver Version - 12.5.1.0
>      ndv:      Driver package 'C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf'
> is already imported.
>      sto:      {Setup Import Driver Package: C:\Windows\INF\oem81.inf} 15:10:06.990
>      sto:           Driver package already imported as 'oem81.inf'.
>      sto:      {Setup Import Driver Package - exit (0x00000000)} 15:10:07.014
>      dvi:      Searching for hardware ID(s):
>      dvi:           *windrvr1251
>      dvi:      Class GUID of device changed to: {c671678c-82c1-43f3-d700-0049433e9a4b}.
>      dvi:      {Plug and Play Service: Device Install for ROOT\JUNGO\0000}
>      dvi:           Driver INF Path: C:\Windows\INF\oem81.inf
>      dvi:           Driver Node Name: windrvr1251.inf:ed86ca11620928ee:DriverInstall:12.5.1.0:*windrvr1251,
>      dvi:           Driver Store Path: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf
>      dvi:           Searching for hardware ID(s):
>      dvi:                *windrvr1251
>      dvi:           Class GUID of device changed to: {c671678c-82c1-43f3-d700-0049433e9a4b}.
>      dvi:           {Core Device Install} 15:10:07.285
>      dvi:                {Install Device - ROOT\JUNGO\0000} 15:10:07.299
>      dvi:                     Device Status: 0x01802001, Problem: 0x0 (0x00000000)
>      dvi:                     Parent device: HTREE\ROOT\0
>      dvi:                     {Configure Device - ROOT\JUNGO\0000} 15:10:07.342
>      dvi:                          Device Status: 0x01802001, Problem: 0x0 (0x00000000)
>      dvi:                          Parent device: HTREE\ROOT\0
>      sto:                          {Configure Driver Package: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf}
>      sto:                               Source Filter  = *windrvr1251
>      inf:                               Class GUID     = {c671678c-82c1-43f3-d700-0049433e9a4b}
>      inf:                               Class Options  = Configurable
>      idb:                               {Configure Device Setup Class: {c671678c-82c1-43f3-d700-0049433e9a4b}}
>      idb:                                    Updating existing class.
>      idb:                                    Class Name = Jungo
>      idb:                               {Configure Device Setup Class: exit(0x00000000)}
>      inf:                               {Configure Driver: WinDriver1251}
>      inf:                                    Section Name = DriverInstall.NT
>      inf:                                    {Add Service: WinDriver1251}
>      inf:                                         Start Type    = 3
>      inf:                                         Service Type  = 1
>      inf:                                         Error Control = 1
>      inf:                                         Image Path    = \SystemRoot\system32\drivers\windrvr1251.sys
>      inf:                                         Updated service 'WinDriver1251'.
>      inf:                                    {Add Service: exit(0x00000000)}
>      inf:                                    Hardware Id  = *WINDRVR1251
>      inf:                                    {Configure Driver Configuration: DriverInstall.NT}
>      inf:                                         Service Name  = WinDriver1251
>      inf:                                         Config Flags  = 0x00000000
>      inf:                                    {Configure Driver Configuration: exit(0x00000000)}
>      inf:                               {Configure Driver: exit(0x00000000)}
>      flq:                               Copying 'C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.sys'
> to 'C:\Windows\System32\Drivers\windrvr1251.sys'.
>      cpy:                               Existing file 'C:\Windows\System32\Drivers\windrvr1251.sys' remains unchanged.
>      sto:                          {Configure Driver Package: exit(0x00000000)}
>      dvi:                          Install Device: Configuring device (oem81.inf:*windrvr1251,DriverInstall.NT). 15:10:07.703
>      dvi:                          Install Device: Configuring device completed. 15:10:07.743
>      dvi:                          Device Status: 0x01802001, Problem: 0x0 (0x00000000)
>      dvi:                          Install Device: Starting device 'ROOT\JUNGO\0000'. 15:10:07.766
>      dvi:                          Install Device: Starting device completed. 15:10:07.823 !!!  dvi:                          Device not
> started: Device has problem: 0x34 (CM_PROB_UNSIGNED_DRIVER), problem
> status: 0xc0000428.
>      dvi:                     {Configure Device - exit(0x00000000)} 15:10:07.848
>      dvi:                     Device Status: 0x01802401, Problem: 0x34
>      dvi:                {Install Device - exit(0x00000000)} 15:10:07.914
>      dvi:           {Core Device Install - exit(0x00000000)} 15:10:07.924
>      ump:      {Plug and Play Service: Device Install exit(00000000)}
>      ndv: {Update Device Driver - exit(00000000)}
>      ndv: {Install Related Drivers} 15:10:07.971
>      ndv: {Install Related Drivers: exit(0x00000000)} 15:10:08.018 <<<  Section end 2018/09/04 15:10:08.056 <<<  [Exit status: SUCCESS]
> 
> 
> >>>  [SetupCopyOEMInf - C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf]
> >>>  Section start 2018/09/04 15:10:08.062
>       cmd: "C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\wdreg_gui.exe" -inf windrvr1251.inf install
>      inf: Copy style: 0x00000002
>      inf: Driver Store Path: C:\Windows\System32\DriverStore\FileRepository\windrvr1251.inf_amd64_cfd33c661949720b\windrvr1251.inf
>      inf: Published Inf Path: C:\Windows\INF\oem81.inf <<<  Section end 2018/09/04 15:10:08.101 <<<  [Exit status: SUCCESS]
> 
> 
> >>>  [Setup Import Driver Package - C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\USBtoI2C_Elite.inf]
> >>>  Section start 2018/09/04 15:10:08.656
>       cmd: "C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\wdreg_gui" -inf USBtoI2C_Elite.inf preinstall
>      inf: Provider: Jungo Connectivity LTD.
>      inf: Class GUID: {c671678c-82c1-43f3-d700-0049433e9a4b}
>      inf: Driver Version: 10/31/2017,12.5.1
>      inf: Catalog File: usbtoi2c_elite.cat
>      sto: {Copy Driver Package: C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\USBtoI2C_Elite.inf}
> 15:10:08.694
>      sto:      Driver Package = C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\USBtoI2C_Elite.inf
>      sto:      Flags          = 0x00000007
>      sto:      Destination    = C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}
>      sto:      Copying driver package files to 'C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}'.
>      flq:      Copying 'C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\usbtoi2c_elite.cat' to
> 'C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\usbtoi2c_elite.cat'.
>      flq:      Copying 'C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\USBtoI2C_Elite.inf' to
> 'C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\USBtoI2C_Elite.inf'.
>      sto: {Copy Driver Package: exit(0x00000000)} 15:10:08.819
>      pol: {Driver package policy check} 15:10:08.866
>      pol: {Driver package policy check - exit(0x00000000)} 15:10:08.872
>      sto: {Stage Driver Package: C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\USBtoI2C_Elite.inf}
> 15:10:08.878
>      inf:      {Query Configurability: C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\USBtoI2C_Elite.inf}
> 15:10:08.897
>      inf:           Driver package is fully isolated.
>      inf:           Driver package 'USBtoI2C_Elite.inf' is configurable.
>      inf:      {Query Configurability: exit(0x00000000)} 15:10:08.918
>      flq:      Copying 'C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\usbtoi2c_elite.cat'
> to
> 'C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\usbtoi2c_elite.cat'.
>      flq:      Copying 'C:\Users\LPEDER~1\AppData\Local\Temp\{6497b5f3-7b4a-684d-905d-18e91d68ae03}\USBtoI2C_Elite.inf'
> to
> 'C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\USBtoI2C_Elite.inf'.
>      sto:      {DRIVERSTORE IMPORT VALIDATE} 15:10:08.995
>      sig:           {_VERIFY_FILE_SIGNATURE} 15:10:09.128
>      sig:                Key      = USBtoI2C_Elite.inf
>      sig:                FilePath = C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\USBtoI2C_Elite.inf
>      sig:                Catalog  = C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\usbtoi2c_elite.cat
> !    sig:                Verifying file against specific (valid)
> catalog failed. !    sig:                Error 0x800b0109: A
> certificate chain processed, but terminated in a root certificate
> which is not trusted by the trust provider.
>      sig:           {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 15:10:09.223
>      sig:           {_VERIFY_FILE_SIGNATURE} 15:10:09.232
>      sig:                Key      = USBtoI2C_Elite.inf
>      sig:                FilePath = C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\USBtoI2C_Elite.inf
>      sig:                Catalog  = C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}\usbtoi2c_elite.cat
>      sig:                Success: File is signed in Authenticode(tm) catalog.
>      sig:                Error 0xe0000241: The INF was signed with an Authenticode(tm) catalog from a trusted publisher.
>      sig:           {_VERIFY_FILE_SIGNATURE exit(0xe0000241)} 15:10:09.331
>      sto:      {DRIVERSTORE IMPORT VALIDATE: exit(0x00000000)} 15:10:09.350
>      sig:      Signer Score = 0x0F000000
>      sig:      Signer Name  = SB Solutions, Inc.
>      sto:      {DRIVERSTORE IMPORT BEGIN} 15:10:09.381
>      sto:      {DRIVERSTORE IMPORT BEGIN: exit(0x00000000)} 15:10:09.391
>      cpy:      {Copy Directory: C:\Windows\System32\DriverStore\Temp\{e8835874-b28e-7142-be5b-81e4a6441b2b}}
> 15:10:09.402
>      cpy:           Target Path = C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e
>      cpy:      {Copy Directory: exit(0x00000000)} 15:10:09.434
>      idb:      {Register Driver Package: C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\USBtoI2C_Elite.inf}
> 15:10:09.447
>      idb:           Created driver package object 'usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e' in DRIVERS database node.
>      idb:           Created driver INF file object 'oem82.inf' in DRIVERS database node.
>      idb:           Registered driver package 'usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e' with 'oem82.inf'.
>      idb:      {Register Driver Package: exit(0x00000000)} 15:10:09.509
>      idb:      {Publish Driver Package: C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\USBtoI2C_Elite.inf}
> 15:10:09.516
>      idb:           Activating driver package 'usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e'.
>      cpy:           Published 'usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.inf' to
> 'oem82.inf'.
>      idb:           Indexed 2 device IDs for 'usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e'.
>      sto:           Flushed driver database node 'DRIVERS'. Time = 32 ms
>      sto:           Flushed driver database node 'SYSTEM'. Time = 78 ms
>      idb:      {Publish Driver Package: exit(0x00000000)} 15:10:09.694
>      sto:      {DRIVERSTORE IMPORT END} 15:10:09.704
>      dvi:           Flushed all driver package files to disk. Time = 16 ms
>      sig:           Installed catalog 'usbtoi2c_elite.cat' as 'oem82.cat'.
>      sto:      {DRIVERSTORE IMPORT END: exit(0x00000000)} 15:10:09.798
>      sto: {Stage Driver Package: exit(0x00000000)} 15:10:09.820 <<<  Section end 2018/09/04 15:10:09.885 <<<  [Exit status: SUCCESS]
> 
> 
> >>>  [SetupCopyOEMInf - C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\USBtoI2C_Elite.inf]
> >>>  Section start 2018/09/04 15:10:09.894
>       cmd: "C:\Program Files (x86)\i2ctools\USB-to-I2C Elite\USBDriver\wdreg_gui" -inf USBtoI2C_Elite.inf preinstall
>      inf: Copy style: 0x00040000
>      inf: Driver Store Path: C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.inf
>      inf: Published Inf Path: C:\Windows\INF\oem82.inf
>      sig: Installing catalog usbtoi2c_elite.cat as: oem82.CAT <<<  Section end 2018/09/04 15:10:10.151 <<<  [Exit status: SUCCESS]
> 
> 
> >>>  [Device Install (Hardware initiated) - USB\VID_18E4&PID_1000\3897]
> >>>  Section start 2018/09/04 15:11:46.882
>      dvi: {Build Driver List} 15:11:46.934
>      dvi:      Searching for hardware ID(s):
>      dvi:           usb\vid_18e4&pid_1000&rev_0100
>      dvi:           usb\vid_18e4&pid_1000
>      dvi:      Searching for compatible ID(s):
>      dvi:           usb\class_ff&subclass_00&prot_00
>      dvi:           usb\class_ff&subclass_00
>      dvi:           usb\class_ff
>      dvi:      Created Driver Node:
>      dvi:           HardwareID   - USB\VID_18E4&PID_1000
>      dvi:           InfName      - C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.inf
>      dvi:           DevDesc      - USB-to-I2C Elite
>      dvi:           Section      - Install.NT
>      dvi:           Rank         - 0x00ff0001
>      dvi:           Signer Score - Authenticode
>      dvi:           DrvDate      - 10/31/2017
>      dvi:           Version      - 12.5.1.0
>      dvi: {Build Driver List - exit(0x00000000)} 15:11:47.050
>      dvi: {DIF_SELECTBESTCOMPATDRV} 15:11:47.056
>      dvi:      Default installer: Enter 15:11:47.062
>      dvi:           {Select Best Driver}
>      dvi:                Class GUID of device changed to: {c671678c-82c1-43f3-d700-0049433e9a4b}.
>      dvi:                Selected Driver:
>      dvi:                     Description - USB-to-I2C Elite
>      dvi:                     InfFile     - c:\windows\system32\driverstore\filerepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.inf
>      dvi:                     Section     - Install
>      dvi:           {Select Best Driver - exit(0x00000000)}
>      dvi:      Default installer: Exit
>      dvi: {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)} 15:11:47.112
>      dvi: {Core Device Install} 15:11:47.118
>      dvi:      {Install Device - USB\VID_18E4&PID_1000\3897} 15:11:47.131
>      dvi:           Device Status: 0x01806400, Problem: 0x1 (0xc0000493)
>      dvi:           Parent device: USB\ROOT_HUB30\4&3167e99&0&0
>      dvi:           {Configure Device - USB\VID_18E4&PID_1000\3897} 15:11:47.166
>      dvi:                Device Status: 0x01806400, Problem: 0x1 (0xc0000493)
>      dvi:                Parent device: USB\ROOT_HUB30\4&3167e99&0&0
>      sto:                {Configure Driver Package: C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.inf}
>      sto:                     Source Filter  = usb\vid_18e4&pid_1000
>      inf:                     Class GUID     = {c671678c-82c1-43f3-d700-0049433e9a4b}
>      inf:                     Class Options  = Configurable
>      inf:                     {Configure Driver: USB-to-I2C Elite}
>      inf:                          Section Name = Install.NT
>      inf:                          {Add Service: WinDriver1251}
>      inf:                               Start Type    = 3
>      inf:                               Service Type  = 1
>      inf:                               Error Control = 1
>      inf:                               Image Path    = \SystemRoot\System32\Drivers\windrvr1251.sys
>      inf:                               Updated service 'WinDriver1251'.
>      inf:                          {Add Service: exit(0x00000000)}
>      inf:                          Hardware Id  = USB\VID_18E4&PID_1000
>      inf:                          {Configure Driver Configuration: Install.NT}
>      inf:                               Service Name  = WinDriver1251
>      inf:                               Config Flags  = 0x00000000
>      inf:                          {Configure Driver Configuration: exit(0x00000000)}
>      inf:                     {Configure Driver: exit(0x00000000)}
>      sto:                {Configure Driver Package: exit(0x00000000)}
>      dvi:                Install Device: Configuring device (oem82.inf:usb\vid_18e4&pid_1000,Install.NT). 15:11:47.312
>      dvi:                Install Device: Configuring device completed. 15:11:47.340
>      dvi:                Device Status: 0x01806000, Problem: 0x0 (0x00000000)
>      dvi:                Install Device: Starting device 'USB\VID_18E4&PID_1000\3897'. 15:11:47.352
>      dvi:                Install Device: Starting device completed. 15:11:47.377 !!!  dvi:                Device not started: Device has
> problem: 0x34 (CM_PROB_UNSIGNED_DRIVER), problem status: 0xc0000428.
>      dvi:           {Configure Device - exit(0x00000000)} 15:11:47.391
>      dvi:           Device Status: 0x01806400, Problem: 0x34
>      dvi:      {Install Device - exit(0x00000000)} 15:11:47.432
>      dvi: {Core Device Install - exit(0x00000000)} 15:11:47.437 <<<  Section end 2018/09/04 15:11:47.450 <<<  [Exit status: SUCCESS]

Certificate path for the catalog file C:\Windows\System32\DriverStore\FileRepository\usbtoi2c_elite.inf_amd64_c5a0a9f61572b56e\usbtoi2c_elite.cat

  • Driver errors are logged in %windir%\inf\setupapi.dev.log. Could you please check the error there ? One possibility for a failure are tampered files. This should be listed there. – Hans Hubert Vogts Sep 4 '18 at 11:30
  • Maybe this helps richud.com/wiki/… – Hans Hubert Vogts Sep 4 '18 at 20:10
2

This is a typical error you get if vendors are still only cross-signing their drivers.

Note: Please provide your exact Windows Version next time!

However, I'm assuming that your Windows 10 version is at least 1607 (aka Redstone 1, Anniversary Update) and you have Secure Boot enabled.

If my assumption is true, this driver won't work.

I've extracted the .sys and .cat files from the installer package and verified that these drivers do not have a Microsoft signature:

cross-signing signature

Since Windows 10 version 1607, a tightened kernel driver certification is enforced. The new rule is that all Windows 10 drivers must be digitally signed by Microsoft, no more cross signing! Kernel driver developers must now use an Extended Validation (EV) code signing certificate and submit their drivers to the Windows Hardware Developer Center Dashboard Portal where the drivers will be signed by Microsoft.

In that case you would see a signature like this:

microsoft-signature

Check the following links for more information:

How do I allow cross-signed kernel drivers in Windows 10 version 1607 with secure boot enabled?

https://docs.microsoft.com/en-us/windows-hardware/drivers/install/kernel-mode-code-signing-policy--windows-vista-and-later-

What are your options now?

  • Ask the vendor to provide a Microsoft-signed driver (should be taken for granted actually)
  • Disable driver verification (as you've already discovered)
  • Disable Secure Boot
  • My Windows version is higher than 1607 and I suppose Secure Mode boot is on, since it's the default. This is probably the right answer. I have emailed the vendor with this information. – Rugbrød Sep 10 '18 at 7:40
  • @Rugbrød You can run msinfo32.exe and check the item "Secure Boot State". If the value is "On" then that driver definitely won't work unless you disable Secure Boot in the BIOS of your PC. – gollum Sep 10 '18 at 13:22
  • Secure Boot State is on – Rugbrød Sep 10 '18 at 14:14
  • 1
    I have talked to the vendor and they don't intend to make any changes since their other customers don't experience any problems with the drivers. – Rugbrød Sep 25 '18 at 7:11
  • 1
    :rolleyes: but thanks for the update! – gollum Sep 26 '18 at 11:02
0

According to the vendor the drivers are signed, and the security catalog file usbtoi2c_elite.cat shows that the certificates are recognized by Windows. Why is Windows reporting this error?

A driver can be signed, but if the certificate used to sign the driver isn't trusted, then the driver will be treated as not being properly signed. The following error appears in the log you provided.

the certificate chain processed but terminated in a root certificate which is not trusted by the trust provider.

So the error is caused by the root certificate not being trusted.

Is there any way to get the drivers to work without disabling driver signature verification completely?

Only a system administrator can solve this problem. The root certificate which signed the certificate that signed the driver will have to be added to the certificate store.

  • I can see that error... but the .cat file is OK and so is its certificate path. And the certificate at the root "COMODO SECURE" is in the Certificate store (Trusted Root Certification Authorities) for both the machine and the current user... – Rugbrød Sep 4 '18 at 15:06
  • I am sticking by my answer. If you want a more detailed explanation, you would need to provide the certificate path, for the certificate that signed the driver – Ramhound Sep 4 '18 at 16:08
  • I added the certificate path for the catalog file. – Rugbrød Sep 5 '18 at 8:15
  • @Ramhound You know that since Windows 10 1607 only Microsoft-signed drivers are allowed and driver cross signing was abandoned - right? (at least on systems with secure boot enabled) – gollum Sep 8 '18 at 10:11
  • @gollum I was aware but I didn’t think of that possibility. Secure Boot can be disabled though. Technically, I was just explaining that the root certificate was in fact not trusted, which of course is the case. Will adjust my answer though to mention that the certificate must be added and secure Boot disabled. – Ramhound Sep 8 '18 at 16:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.