首页 web前端 H5教程 htm5新增的表单元素keygen标签的用法和属性介绍

htm5新增的表单元素keygen标签的用法和属性介绍

Aug 18, 2018 pm 01:30 PM
html5

htm5新增的表单元素keygen标签的用法和属性介绍,本篇文章主要为大家介绍了html5 keygen标签的定义用法及其属性的描述,还有关于html5 keygen标签的优缺点说明

html5 keygen标签的定义和用法:

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

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

HTML5 标签实例:

带有 keygen 字段的表单:

<form action="demo_keygen.asp" method="get">
Username: <input type="text" name="usr_name" />
Encryption: <keygen name="security" />
<input type="submit" />
</form>

html5 keygen标签的属性:

tuyi.png

html5 keygen标签的优缺点介绍:

首先标签会生成一个公钥和私钥,私钥会存放在用户本地,而公钥则会发送到服务器。那么标签生成的公钥/私钥是用来做什么用的呢?很多朋友在看到公钥/私钥的时候,应该就会想到了非对称加密。没错,标签在这里起到的作用也是一样。

标签所期望的是在收到SPKAC(SignedPublicKeyAndChallenge)排列后,服务器会生成一个客户端证书(Client Certificate),然后返回到浏览器让用户去下载保存到本地。之后,用户在需要验证的时候,使用本地存储的私钥和证书后通过TLS/SSL安全传输协议到服务端做验证。

以下是使用标签的优点:

  1. 一个是可以提高验证时的安全性;

  2. 同时如果是作为客户端证书来使用,可以提高对MITM攻击的防御力度;

  3. keygen标签是跨越浏览器实现的,实现起来非常容易;

  4. 另外就是可以不用考虑操作系统的管理员权限问题。例如操作系统对不同用户设置了不同的浏览器权限,IE或者其他浏览器可以在设置里面禁用key的生成,这种情况下,可以通过keygen标签来生成和使用没有误差的客户端证书。

标签的不足之处也有很多:(比如下面的十种)

  1. 证书(Certificates)在不同的系统里不是容易方便的(但是对于某些系统,这又是一个优势)。

  2. 没有在一个标准的位置存储私钥。

  3. 在html页面看到标签生成的内容总是让人困惑和难以理解。

  4. 标签会让用户从一个列表里选择适当的key,但是大多数用户不知道该如何选择。

  5. 很多用户并不清楚是否该根据提示下载证书(Certificate)。

  6. 标签不提供一个能管理证书让其失效的机制。

  7. 没有标准的key长度或者hash来实现浏览器无关性。

  8. 不支持算法(RSA, DSA, ECC等)。

  9. key的大小选择只能来源于标签生成的表单内容,而不是用户可以选择的。

  10. 签名只能基于MD5,而不能使用其他的加密算法。

浏览器支持

所有主流浏览器都支持 标签,除了 Internet Explorer 和 Safari。

【相关推荐】

html标签legend的具体用法你知道吗?legend标签的属性和使用方法详解

html map标签是什么?html map标签的结构及具体使用方法详解


以上是htm5新增的表单元素keygen标签的用法和属性介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

PHP教程
1596
276
HTML5中的局部元素是什么? HTML5中的局部元素是什么? Aug 12, 2025 pm 04:37 PM

thelementshouldshouldsbousedforcontenttangentytothemaincontent,SustAssidebars,pullquotes,定义,广告,orrelelatedLinks; 2. ItcanbeplectlaceDinSideSideRoutsIdeAnartIcleDeAlticleDepledePonconTeptOncontendementement; 3.Seasemanticemanticelementthatenhancesacaccccccccccccccccceedibilityancibilityandseobypyandseobyp.Anderancebyp.And.anceScebibilibilyandseobyp

如何创建简单的HTML5网页 如何创建简单的HTML5网页 Aug 12, 2025 am 11:51 AM

创建一个简单的HTML5网页需要先使用声明文档类型,接着构建包含、和的基本结构,其中内设置字符编码、视口和标题,内添加可见内容如标题、段落、链接、图片和列表,保存为.html文件后即可在浏览器中直接打开查看,无需服务器支持,这是一个完整且有效的HTML5页面的基础。

HTML5中的可拖动属性是什么 HTML5中的可拖动属性是什么 Aug 12, 2025 am 09:50 AM

thedragableAttributeInhtml5specifiesWhetheranElementCanbedRagged,withValues“ true”,“ false”,oranement oferanement oferstring(sameas“ true”)。2.setTingTingDraggable=“ true” enablesdrag-andsdragdrag-andDropforopforyement,butjavascripteventlistlistlistlistlisterenerslik

如何使用HTML5创建自定义复选框 如何使用HTML5创建自定义复选框 Aug 16, 2025 am 07:05 AM

创建自定义复选框需先使用带label的HTML结构,确保可访问性;2.通过CSS隐藏默认复选框但保留其功能;3.利用伪元素和伪类在自定义.checkmark元素上绘制选中状态;4.添加悬停、聚焦和选中样式以增强交互反馈;5.保持原生输入存在以支持键盘导航和屏幕阅读器,最终实现美观且可访问的自定义复选框。

您如何在HTML5中使用SVG? 您如何在HTML5中使用SVG? Aug 11, 2025 pm 01:30 PM

UseinlineSVGforfullcontroloverstylingandinteractivitywithCSSandJavaScript,idealforsmalliconsordynamicgraphics.2.UsethetagtoembedexternalSVGfileswhentheimageisstaticandinteractivityisnotneeded,ensuringbetterHTMLcleanlinessandcacheability.3.ApplySVGsas

HTML5中的导航链接如何使用导航链接 HTML5中的导航链接如何使用导航链接 Aug 15, 2025 am 05:55 AM

ThetaginHTML5isusedtodefineasectionofmajornavigationlinks,providingsemanticstructureandimprovingaccessibilityandSEO;itshouldwrapprimarynavigationelementslikemenusortablesofcontents,noteverylinkonapage,andcanbeenhancedwithARIAlabelssuchasaria-label=&q

您如何在HTML5中使用自动对焦属性? 您如何在HTML5中使用自动对焦属性? Aug 14, 2025 pm 06:47 PM

Theautofocusattributeautomaticallyfocusesaformelementwhenapageloads.2.Itisabooleanattribute,sonovalueisneeded—justincludeautofocusinthetag.3.Onlyoneelementperpageshoulduseittoavoidunpredictablebehavior.4.Itworksoninput,textarea,select,andbuttonelemen

HTML5中的定义列表是什么? HTML5中的定义列表是什么? Aug 20, 2025 pm 02:01 PM

AdefinitionlistinHTML5iscreatedusingtheelementtogroupterms()withtheirdefinitions(),allowingmultipletermstoshareadefinitionoratermtohavemultipledefinitions,makingitidealforFAQs,glossaries,metadata,andcontactdetailswhileimprovingaccessibilityandSEOthro

See all articles