Is there any way I can repurpose existing ActiveX controls or functionality to get IE to work with the KeyGen element?
Assistance getting Safari to work with this optional HTML5 spec would be appreciated as well.
Information Security Stack Exchange is a question and answer site for information security professionals. It only takes a minute to sign up.
Sign up to join this communityThe simple answer is 'No'. http://lists.w3.org/Archives/Public/public-html/2009Sep/0043.html has a Microsoft engineer basically explaining why ("The problem with is that it fails to address the requirements that people have for certificate enrolment today").
Depending on what you want to do - you may be able to get CertEnroll to produce a reasonable analog - have a look at this MSDN blog entry which contains a pretty detailed example of using JavaScript and the X509Enrollment ActiveX object.
Of course, all of these are dated 2009, but I couldn't find any evidence Microsoft had changed their thinking.
Safari also appears to have native support (http://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/HTMLTags.html#//apple_ref/doc/uid/30001262-keygen).
When this question was asked in 2012, we did not have the Web Crypto API, but now we do. The SubtleCrypto.generateKey() function can be used to generate symmetric keys and asymmetric key pairs on the client side, in javascript. See https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/generateKey for more info.