因此,我在HTML5中遇到了这个新标签<keygen>。我不太清楚它的用途,如何应用以及它如何影响浏览器的行为。

我知道该标签用于表单加密,但是<keygen>和为您的域拥有SSL证书之间有什么区别?另外,challenge属性是什么?

我不打算使用它,因为它远未在可接受的浏览器范围内实现,但我对这个标记的作用感到好奇。我所能找到的只是模糊的cookie切割器文档,没有真正的用法示例。

编辑:

我找到了一个非常有用的文档here。这贯穿了keygen标签的客户端和服务器端实现。

我仍然对此域SSL证书有什么好处感到好奇。

最佳答案

SSL与“服务器标识”或“服务器与客户端身份验证(相互身份验证)”有关。

在大多数情况下,只有服务器在SSL握手期间显示其服务器证书,以便您可以确保这确实是您希望连接的服务器。在某些情况下,服务器还希望验证您确实是您所假装的人。为此,您需要一个客户证书。
<keygen>标记生成一个公共(public)/专用密钥对,然后创建一个证书请求。该证书请求将被发送到证书颁发机构(CA)。 CA创建一个证书,并将其发送回浏览器。现在您可以使用此证书进行用户身份验证。

09-07 00:39