是否有任何库为javascript读取.cer文件,并从中获取密钥

Is there any library for javascript to read .cer file and get key from it?

本文关键字:密钥 获取 文件 cer 任何库 javascript 读取 是否      更新时间:2023-09-26

我想加密数据在客户端和web应用程序采取。cer文件从用户本地计算机。采取后,我会使用密钥加密数据,但我想库或以任何方式读取。cer文件,我在互联网上搜索,我找不到任何库。我使用公钥加密

很难理解为什么确切地说你想要读取这些密钥,但根据你想要实现的目标,你可以使用客户端身份验证的TLS握手,浏览器将为你处理密钥。如果你所需要的只是在传输过程中加密一些数据,那么简单的TLS握手对你来说就足够了。阅读JavaScript Cryptography被认为是有害的,并确保你没有试图重新发明一些已经以更标准的方式工作的东西。

要做到这一点,您需要打破用户浏览器的沙箱。"正常"的方法是创建一个签名的applet。用户需要在其计算机上正确配置Java,并且需要验证签名的applet是否可以运行。然后这个Applet可以使用它的文件读取权限访问用户计算机上的文件,JavaScript可以使用Applet读取证书(并执行加密)。

现在,虽然这在原则上是可能的,但我真的会,reallyreallyreally建议您不要这样做。这个建议来自一个实现了这样一个解决方案的人,他只是非常确定其他项目不会使用相同的解决方案。

您应该使用TLS,可能像其他人建议的那样使用客户端身份验证。如果您愿意,您可以始终通过可信的TLS传输发送公钥,并让JavaScript使用该密钥加密数据。一般来说,配置良好的TLS连接就足够了。

出于浏览器安全原因,浏览器中的Javascript无法访问本地用户计算机上的.cer文件(或任何相关文件)。密钥(用于单个网站)可以存储在本地存储中,并从那里访问。

你可能需要重新考虑你真正想做的事情。如果您使用https与服务器通信,并且您的服务器具有适当的配置和安全凭据,则浏览器和服务器之间的通信将在传输过程中自动受到公钥/私钥加密的保护。