如何使用html5生成临时公钥

How to generate temporary public-key using html5

本文关键字:公钥 何使用 html5      更新时间:2023-09-26

如何在用户浏览器中生成公钥/私钥对

此密钥必须是:

  • 临时的(不会永远保存,仅对当前会话有效)
  • 以跨浏览器/系统的方式生成,而不提示用户进行任何输入
  • 允许出于验证目的访问公钥的哈希

我尝试使用<keygen>,但它需要使用表单和用户干预。

考虑使用WebCrypto

具体来说,crypto.subtle.generateKey将进行密钥生成。

  • 只要您安全地丢弃密钥和/或在所需的有效期到期后使其无效,密钥就可以是临时的。根据系统的工作方式,您可能希望通过将给定密钥滚动到哈希中来验证其到期/有效性。

  • 这里有一个教程,提供了一个跨浏览器的解决方案。

  • 可以使用WebCrypto API的其他部分(参见crypto.subtle.digest)对密钥(和/或其他数据)进行哈希