HTML - <keygen>




This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Do not use it in old or new projects. Pages or Web apps using it may break at any time.

The HTML <keygen> element exists to facilitate generation of key material, and submission of the public key as part of an HTML form. This mechanism is designed for use with Web-based certificate management systems. It is expected that the <keygen> element will be used in an HTML form along with other information needed to construct a certificate request, and that the result of the process will be a signed certificate.

There is currently discussion among Web browser makers whether to keep this feature or not. Until a decision is reached, it is better to continue to consider this feature as deprecated and going away.

Content categories Flow content, phrasing content, interactive content, listed, labelable, submittable, resettable  form-associated element, palpable content.
Permitted content None, it is an empty element.
Tag omission Must have a start tag and must not have an end tag.
Permitted parent elements Any element that accepts phrasing content.
DOM interface HTMLKeygenElement

Browser Compatibility  

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 1.0 [1] 1.0 (1.7 or earlier) No support 3.0 1.2
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support 2.3 (Yes) [1] 1.0 (1.0) No support ? No support (Yes) [1]

[1] Deprecated in Chrome 49.


Specification Status Comment
WHATWG HTML Living Standard
The definition of '<keygen>' in that specification.
Living Standard  
The definition of '<keygen>' in that specification.


© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.

Deprecated Element HTML HTML forms HTML5 Reference Web