使用浏览器的证书(私钥)在 javascript 中签署一些字符串
Using browser's certificate (private key) to sign some string in javascript
我的用户在他们的网络浏览器中安装了一些证书(私钥)。浏览器使用这些证书在某些第三方网站上对用户进行身份验证。
我想签署一些字符串使用其中一个私钥,当用户uses/visits我的网站。是否有任何 JavaScript API 或函数可以做到这一点?
简短回答,您不能使用 Java 脚本和来自最终用户的客户端证书对通过 Web 浏览器传送的字符串进行签名。
在您的情况下,用户证书和密钥用于 TLS 客户端身份验证:
- 在 TLS 握手期间,服务器将请求浏览器提供 TLS 客户端证书。
- 浏览器将选择合适的客户端证书并建立 TLS 连接。
- 完成后,服务器将传送内容:HTML、JS、图像...
- 浏览器将呈现包含所有元素的页面。
浏览器有一个 API 来访问客户端证书和密钥,但这不会暴露给 Java 脚本引擎。
我的用户在他们的网络浏览器中安装了一些证书(私钥)。浏览器使用这些证书在某些第三方网站上对用户进行身份验证。
我想签署一些字符串使用其中一个私钥,当用户uses/visits我的网站。是否有任何 JavaScript API 或函数可以做到这一点?
简短回答,您不能使用 Java 脚本和来自最终用户的客户端证书对通过 Web 浏览器传送的字符串进行签名。
在您的情况下,用户证书和密钥用于 TLS 客户端身份验证:
- 在 TLS 握手期间,服务器将请求浏览器提供 TLS 客户端证书。
- 浏览器将选择合适的客户端证书并建立 TLS 连接。
- 完成后,服务器将传送内容:HTML、JS、图像...
- 浏览器将呈现包含所有元素的页面。
浏览器有一个 API 来访问客户端证书和密钥,但这不会暴露给 Java 脚本引擎。