Replies: 4 comments 14 replies
-
Great experience description. Can you elaborate a bit more "However, the directions can't be readily applied depending on the CA."? |
Beta Was this translation helpful? Give feedback.
-
Thanks for bringing up this issue @zoracon, this is one of the reasons we started the Remote Key Attestation project. Currently it's barely supported and many CA's ship you a token with a key pre-generated. Obviously, that is slow and doesn't work well for renewals or re-keys. The vendors that have implemented a form of Remote Key Attestation do that often in their own proprietary way, which again makes it challenging for software vendors and CAs to support. This is also an active topic within the Code Signing working group of the CA/Browser forum. We are currently running a survey to get more details about current implementations and implementation plans, please ask your vendor(s) to complete the survey and participate on the work of this project. |
Beta Was this translation helpful? Give feedback.
-
There are easier ways around this for now. Most CAs offering EV certificate for code-signing don't pay any attention to the rules. Entrust and Globalsign both use (still!) Javascript and ActiveX on IE11. So a easily-editable web page submits a CSR to a URL - no attestation needed. (The tokens they use don't support attestation so there is no way they ask for proof!) Digicert use a utility (Windows) which submits a CSR again to a web service. No attestation. The software has no idea if you have any token and of course can't prove it to the API endpoint. Simple with Burp and you can see where the CSR is POSTed. (tip: https://digicert.com/api/ev-code-listener.php) Sectigo force you to use their token when they generate a key, which is 'safest' and at least follows the rules but often inconvenient. SSL.com make attempts and support Yubikey attestation: https://www.ssl.com/hsm-attestation/ |
Beta Was this translation helpful? Give feedback.
-
I see that the latest guidelines in the C/AB forum passed Ballot CSC-13
Hope to see more docs from CAs on accomplishing this along with guides from cloud based HSMs or other crypto modules! Either way I am glad this happened! |
Beta Was this translation helpful? Give feedback.
-
As remote work expands, so does remote engineering teams. These are just general comments and questions I am posing to possibly get help in my quest to utilize EV code signing (for trust on Windows) without being tied in to a specific service. I am also hoping to shed light on an issue I have seen where documentation on this process is sparse and generally not spoken of much unless you work for a large corporation. Let me know if this is not the forum to discuss.
I have found the attestation process for FIPS Yubikey (PIV) to not be a straightforward endeavor for each CA's EV certificate.
I know this is fairly "new" in terms of moving away from expensive HSM to a cheaper smartcard. However, the directions can't be readily applied depending on the CA.
For example, the CA we chose sends you an HSM or hardware token. However, they did not provide the option to attest with Yubikeys or have any instructions. Even though it is possible by creating a
.csr
file withECCP256
(CAB Forum Requirements as of June).There were other issues, such as needing to sign a Windows executable on a Windows based machine.
The process to do so on an O.S. like Linux is possible but very flaky and convoluted. But that is outside of the scope of remote attestation to an extent. However, it does relate back to the fact the Windows Defender is the reason why an EV certificate is being used in the first place. I know you can use non EV code signing certificates, but just wanted to point that out.
Cloud based services allow you to sign code through a service. But I really really hope to see the expansion of support using remote attestation for PIV by the major CAs
SSL.com does a great job of documentation but if more smaller teams who can't afford cloud services can utilize this process, it would open the door for safe code signing and convenient code signing for various engineering flows. Multiple people on a remote team could have smart cards with attestation.
Anyway, those are my woes as someone who has been trying to apply CAB Forum Requirements and NIST docs for months in a way that's sane for a small remote team. Thanks in advance to anyone who engages or can offer clarity!
Beta Was this translation helpful? Give feedback.
All reactions