Driver Signing changes in Windows 10, version 1607
blogs.msdn.microsoft.com
blogs.msdn.microsoft.com
I tried to check out this dashboard that they're talking about, but it doesn't look like I can get it without being associated with a registered company. I am wondering how hard it would be under the new policy to do something like this again - what's the cheapest and simplest way to get a driver that will work with a fully secure Windows 10 install? Including if the hardware associated will never be sold to the general public?
It's probably moot in the particular case I dealt with, at least. I doubt the company in question will be upgrading to 10 anytime soon, plus the hardware in question was being slowly phased out. It used Firewire - the guy who chose that told me that it seemed like a good idea at the time - and I had already done the testing for the replacement device which used TCP/IP over Ethernet instead.
But I still wonder if it's getting gradually harder to do anything with any kind of custom hardware without already being part of a multi-billion dollar company that's willing to invest millions of dollars in getting hardware and drivers properly certified.
While in the case of general software that would be true, its not really useful to do that in the case of drivers because someone has to maintain the source code across kernel ABI/API changes. Its just easier on Windows.
Look at the maker movement and you see just about even the cheapest PCB boards these days (*duino and the like) has an Ethernet port and probably even WiFi or at least Bluetooth LTE. A Raspberry Pi is a few dozen dollars and has WiFi.
It's easy to mock a lot of the "Internet of Things" enthusiasm, but the real benefit is that custom hardware these days isn't so much about low level kernel hacking to build drivers but is almost all "user space" work like REST services over IPv6. It's an interesting new world and probably an improvement on the days of bit-twiddling serial buses slightly different for every bit of custom hardware ever connected to a computer. (...and even that today you can still do with USB standard serial device profiles and writing an event-driven app in user space rather than build your own interrupt-driven driver.)
- If you can modify the hardware, equip it with an ethernet/wifi/bluetooth module and talk to it via IP.
- if you need kernel-mode access, you could develop a linux driver instead, run it in a VM (or a raspi) and communicate with the windows PC using IP. (Admittedly, that's a bit rube goldberg-ish)
- Communicate using the good old serial interface instead and use a user-mode program/library on windows.
https://tech.slashdot.org/story/16/07/31/2146234/all-windows...
At the moment there are two kinds of commonly available certificates, EV certificates, and non-EV Code Signing certificates. But rarely do the two meet.
This scheme, per the Secure Boot standard, requires an EV Code Signing certificate which as of the time of writing is only sold by five vendors.
In the future as these become more in demand we should expect to see prices fall. The requirements to get any EV certificate are the same, and flagging it for code signing is free, so there's no real reason any EV certificate cannot also be a code signing certificate.
I doubt it will fall below $100-200 ever however, as that is how much EV certificates cost and the process is similar.
edit: DigiCert already sell them for $224-165/year: https://www.digicert.com/friends/sysdev/
[1] OP, under 'How do I sign drivers during development and testing?'
[2] https://msdn.microsoft.com/en-us/windows/hardware/drivers/in...
The kind that develops ext2 drivers for windows, or pcap, or so on?
Does Microsoft pay the costs for the EV certificate for all of those? That’s quite generous of them.
Certum seems like a reasonable solution (14 EUR).
https://en.sklep.certum.pl/data-safety/code-signing-certific...
It's typically for signing your MSI's and miscellaneous executables before distribution.
If you have a whitelist, then malware authors would ship a primary driver that is signed and "clean". This clean driver just changes the whitelist so other malware can be executed without signature checks. I would suggest you first model the threat, model your response and analyze the different approaches.
A non-Code Signing EV certificate is "only" $100-200 right now from tons of vendors. All we need is for them to flag it for Code Signing which is "free."
Also, have there been many instances of malware in device drivers recently that would require a tightening up of the rules?
[0]: Microsoft's user-mode USB driver, which did (IIRC) need a signed .inf file but you didn't need to submit it for validation since all the actual code was Microsoft's (https://msdn.microsoft.com/en-gb/library/windows/hardware/ff...)
Look for more details on "ModPOS" for a particularly disastrous one.
You may want to doublecheck the inf to see if your device's usb VID/PID are listed.
I'm left wondering whether and for what timeframe I can legitimately "downgrade" back to Win 7 Pro, if I need to.
I initially thought I had an open-ended option to. But the other day, I saw brief and incomplete mention of a 30 day window.
I just can't keep up with the dribbling of fractured news/information, so... asking this of anyone already familiar with this aspect of the "downgrade" question".
I don't have a need to, right now. As it is, those Windows partitions mostly sit idle. But if I only have 30 days to go back (while keeping a future 10 re-upgrade possible / tied to those licenses), then maybe I'd better do so, now, as a hedge against e.g. some legacy driver issue that may crop up in the future. Especially as I would intend to do a fresh Win 10 installation for each of those licenses, eventually (negating any "it's already on the system" grandfathering Win 10 may continue to permit).
For the moment, the upgraded partitions/installs are "going back to sleep" on hard drives being popped out and set aside.
They'll come back out the next time I need to deal with e.g. Adobe Creative Suite, or some family need aka Mom project.
The 30 day window is the period of time where you can uninstall and revert to 7 from within Windows 10, without having to do a clean install of 7. Windows 10 removes files from the old version of Windows after 30 days.
I happen to think it's mostly stupid, but you can't say it's behind.