我知道,这看起来很奇怪,但我需要仅使用 javascript 在客户端签署一些数据,没有可用的服务器端 openssl 的 ajax 后门。有人可以建议一些客户端解决方案来使用私钥签署数据吗?是否可以?
谢谢。
我知道,这看起来很奇怪,但我需要仅使用 javascript 在客户端签署一些数据,没有可用的服务器端 openssl 的 ajax 后门。有人可以建议一些客户端解决方案来使用私钥签署数据吗?是否可以?
谢谢。
找到了很棒的签名工具。它实现了 RSA-SHA1(工作完美)和 RSA-SHA256(工作奇怪),并允许使用私钥生成签名并使用证书验证签名。
我和你走的路一样,你最好实施像oAuth这样的东西。
您提出的问题是,绝对没有可靠的方法将私钥存储在客户端计算机上,现在也没有安全地将公钥返回到服务器而不是 HTTPS(如果您使用的是 HTTPS,那么这是什么意思?)
如果你真的想继续,那里有一些实现: http: //shop-js.sourceforge.net/crypto2.htm
而且您可能想要像 PersistJS (http://pablotron.org/?cid=1557) 这样令人讨厌的东西来尝试尽可能长时间地保存私钥。
W3C Web Cryptography API可能会有所帮助。 Can I use表示现代浏览器现在支持它。
如需其他数字签名支持,请查看GlobalSign/PKI.js
PKIjs 是一个纯 JavaScript 库,实现了 PKI 应用程序中使用的格式(签名、加密、证书请求、OCSP 和 TSP 请求/响应)。它建立在 WebCrypto (Web Cryptography API) 之上,不需要插件。 http://pkijs.org