Is there some reliable way to detect whether a particular code signing certificate is a "Class 3" certificate?
This crops up as a requirement in a lot of Microsoft's Authenticode documentation, but it's never made clear how to tell a Class 3 cert from any other kind of cert. Sometimes it's clear enough from just reading the details - e.g., VeriSign include the phrase "Class 3 Code Signing" in their certificate subjects when signing your cert. But looking for particular text in the subject of certificates in the certification path seems flakey.
By observation, it seems that a combination of and "Enhanced Key Usage" that includes "Code Signing (1.3.6.1.5.5.7.3.3)", plus being signed by trusted CA is a common feature, but I've not read anything that suggests that this would be a reliable test.