在 php 中加密数据并在 javascript 中解密

Encrypting data in php and decryption in javascript

我正在使用 2 个服务器。

我想创建一对密钥并将私钥存储在本地存储中,然后将 public 密钥发送到 PHP 服务器。

基本上在 PHP 中使用 public 密钥加密数据,在 JavaScript

中解密数据

任何建议..我应该怎么做。

我已经尝试了一些东西,但结果并不像 (public 键)[http://phpseclib.sourceforge.net/rsa/examples.html#convert] and (private key)[https://github.com/travist/jsencrypt]

谢谢。

更新:

AIM:目的是安全地将数据从PHP服务器发送到客户端。

更新编辑:

将私钥保存在 php 代码中并将 public 密钥提供给客户端(javascript 服务器 node.js)在通话中有多安全......就像用于将数据从 node.js 服务器发送到 php 服务器....没有 https 安全吗??

或者如果我们使用 https 那么我们就不需要使用这个方法...??

谢谢

如果您的目标是安全地将数据从 php 服务器发送到客户端,请考虑使用 HTTPS。

你正在尝试做的事情很难做到正确。如果您不使用 HTTPS,那么它就毫无意义,因为您的访问者将无法知道他们正在与谁交谈以及密钥生成和解密代码是否值得信赖。如果您使用的是 HTTPS,那么您已经将数据从 php 服务器安全地发送到客户端(使用私钥和 public 密钥)并再次加密它不会做任何事情。

如果您试图保护该秘密不受浏览器中其他 JavaScript 代码 运行 的影响,它仍然不会执行任何操作,因为您的浏览器中有私钥、加密算法和加密消息并不比明文形式安全。

此外,在密钥生成、密钥分发、加密算法、处理加密消息等方面存在很多细微错误。即使您可以正确地完成所有这些操作,您最多只能得到您已经拥有的 HTTPS。

并且不要认为这很容易 - 具有良好意愿和经验丰富的开发人员的 OpenSSL 可能是 the number of CVE entries 的世界纪录保持者,因为这东西很难做到正确。

请务必阅读这篇经典文章:

还值得一读: