HTML <keygen> 元素是为了方便生成密钥材料和提交作为 HTML form 的一部分的公钥.这种机制被用于设计基于 Web 的证书管理系统。按照预想, <keygen> 元素将用于 HTML 表单与其他的所需信息一起构造一个证书请求,该处理的结果将是一个带有签名的证书。
该标签在新的 Web 标准中已废弃。
带有 keygen 字段的表单:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>基础教程(nhooo.com)</title> </head> <body> <form action="demo-form.php" method="get"> 用户名: <input type="text" name="usr_name"> 加密: <keygen name="name" challenge="challenge string" keytype="type" keyparams="pqg-params"> <input type="submit"> </form> <p><strong>注意:</strong> Internet Explorer 不支持 keygen 标签。</p> </body> </html>测试看看 ‹/›
IEFirefoxOperaChromeSafari
Firefox、Opera、Chrome 和 Safari 6 都支持 <keygen> 标签。
<keygen> 标签规定用于表单的密钥对生成器字段。
当提交表单时,私钥存储在本地,公钥发送到服务器。
该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。
<keygen> 元素是 HTML5 新标签。
New:HTML5 新属性。
属性 | 值 | 描述 |
---|---|---|
autofocusHTML5 | autofocus | 使 <keygen> 字段在页面加载时获得焦点。 |
challengeNew | challenge | 如果使用,则将 keygen 的值设置为在提交时询问。 |
disabledHTML5 | disabled | 禁用 <keygen> 元素字段。 |
formHTML5 | form_id | 定义该 <keygen> 字段所属的一个或多个表单。 |
keytypeHTML5 | rsa dsa ec | 定义密钥的安全算法。 |
nameHTML5 | name | 定义 <keygen> 元素的唯一名称。 name 属性用于在提交表单时搜集字段的值。 |
<keygen> 标签支持全局属性,查看完整属性表 HTML全局属性.
<keygen> 标签支持所有 HTML事件属性.