百科狗-知识改变命运!
--

- html5 弃用元素

梵高12个月前 (11-21)阅读数 20#技术干货
文章标签元素

版本:HTML5废弃

HTML   元素是为了方便生成密钥材料和提交作为HTML form 的一部分的公钥.这种机制被用于设计基于 Web 的证书管理系统。按照预想,  元素将用于 HTML 表单与其他的所需信息一起构造一个证书请求,该处理的结果将是一个带有签名的证书。

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流式内容元素,段落内容元素, 交互内容元素,listed,labelable,submittable,resettable form-associated element, 段落内容元素.
Permitted contentNone, it is anempty element.
Tag omissionMust have a start tag and must not have an end tag.
允许的父元素可接受的任何元素段落内容元素.
DOM接口HTMLKeygenElement

Attributes

This element includes the global attributes.

  • autofocusThis Boolean attribute lets you specify that the control should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form element in a document can have theautofocusattribute, which is a Boolean.
  • challengeA challenge string that is submitted along with the public key. Defaults to an empty string if not specified.
  • disabledThis Boolean attribute indicates that the form control is not available for interaction.
  • formThe form element that this element is associated with (itsform owner). The value of the attribute must be anidof aelement in the same document. If this attribute is not specified, this element must be a descendant of aelement. This attribute enables you to placeelements anywhere within a document, not just as descendants of their form elements.
  • keytypeThe type of key generated. The default value isRSA.
  • nameThe name of the control, which is submitted with the form data.

The element is written as follows:

Thekeytypeparameter is used to specify what type of key is to be generated. Valid values are "RSA", which is the default,"DSA" and "EC".Thenameandchallengeattributes are required in all cases.Thekeytypeattribute is optional for RSA key generation and required for DSA and EC key generation.Thekeyparamsattribute is required for DSA and EC key generation and ignored for RSA key generation.PQGis a synonym forkeyparams. That is, you may specifykeyparams="pqg-params"orpqg="pqg-params".

For RSA keys,thekeyparamsparameter is not used (ignored if present). The user may be given a choice of RSA key strengths. Currently, the user is given a choice between "high" strength (2048 bits) and "medium" strength (1024 bits).

For DSA keys,thekeyparamsparameter specifies the DSA PQG parameters which are to be used in the keygen process. The value of thepqgparameter is the the BASE64 encoded, DER encoded Dss-Parms as specified in IETFRFC 3279. The user may be given a choice of DSA key sizes, allowing the user to choose one of the sizes defined in the DSA standard.

 - html5 弃用元素

For EC keys,thekeyparamsparameter specifies the name of the elliptic curve on which the key will be generated. It is normally a string from the table innsKeygenHandler.cpp.(Note that only a subset of the curves named there may actually be supported in any particular browser.) If thekeyparamsparameter string is not a recognized curve name string, then a curve is chosen according to the user's chosen key strength (low, medium, high), using the curve named "secp384r1" for high, and the curve named "secp256r1" for medium keys.(Note: choice of the number of key strengths, default values for each strength, and the UI by which the user is offered a choice, are outside of the scope of this specification.)

Theelement is only valid within an HTML form. It will cause some sort of selection to be presented to the user for selecting key size. The UI for the selection may be a menu, radio buttons, or possibly something else. The browser presents several possible key strengths. Currently, two strengths are offered, high and medium. If the user's browser is configured to support cryptographic hardware (e.g."smart cards") the user may also be given a choice of where to generate the key, i.e., in a smart card or in software and stored on disk.

When the submit button is pressed, a key pair of the selected size is generated. The private key is encrypted and stored in the local key database.

 publickeyandchallenge ::= sequence {
       spki subjectpublickeyinfo,
       challenge ia5string
   }
   signedpublickeyandchallenge ::= sequence {
       publickeyandchallenge publickeyandchallenge,
       signaturealgorithm algorithmidentifier,
       signature bit string
   }

The public key and challenge string are DER encoded asPublicKeyAndChallenge, and then digitally signed with the private key to produce aSignedPublicKeyAndChallenge.TheSignedPublicKeyAndChallengeisBase64encoded, and the ASCII data is finally submitted to the server as the value of a form name/value pair, where the name isnameas specified by thenameattribute of thekeygenelement. If no challenge string is provided, then it will be encoded as anIA5STRINGof length zero.

Here is an example form submission as it would be delivered to a CGI program by the HTTP server:

 commonname=john+doe&email=doe@foo.com&org=foobar+computing+corp.&
   orgunit=bureau+of+bureaucracy&locality=anytown&state=california&country=us&
   key=mihfmhewxdanbgkqhkig9w0baqefaanladbiakeanx0tiljromuue%2bptwbre6xfv%0awtkqbsshxk5zhcuwcwyvcniq9b82qhjdoacdd34rqfcaind46fxkqunb0mvkzqid%0aaqabfhfnb3ppbgxhsxnneuzyawvuzdanbgkqhkig9w0baqqfaanbaakv2eex2n%2fs%0ar%2f7ijnrowlszsmttiqteb%2badwhgj9u1xruroilq%2fo2cuqxifzcnzkyakwp4dubqw%0ai0%2f%2frgbvmco%3d

Examples

  • Sample form with RSA KEYGEN element
  • Sample form with DSA KEYGEN element and PQG Parameters
  • Sample form with DSA KEYGEN element but no PQG Parameters
  • Sample form with EC KEYGEN element

Specifications

SpecificationStatusComment
HTML Living Standard
Living Standard 
HTML5
Recommendation 

实例

带有 keygen 字段的表单:

 username:
 encryption:
  

浏览器支持

Firefox、Opera、Chrome 和 Safari 6 都支持标签。

标签定义及使用说明

标签规定用于表单的密钥对生成器字段。

当提交表单时,私钥存储在本地,公钥发送到服务器。

HTML 4.01 与 HTML5之间的差异

元素是 HTML5 新标签。

属性

New:HTML5 新属性。

属性描述
autofocusNewautofocus使字段在页面加载时获得焦点。
challengeNewchallenge如果使用,则将 keygen 的值设置为在提交时询问。
disabledNewdisabled禁用元素字段。
formNewform_id定义该字段所属的一个或多个表单。
keytypeNewrsa
dsa
ec
定义密钥的安全算法。
nameNewname定义元素的唯一名称。name 属性用于在提交表单时搜集字段的值。

全局属性

标签支持全局属性,查看完整属性表HTML全局属性.

事件属性

标签支持所有HTML事件属性.

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)