0

问题是使用密钥而不使用 https 来加密客户端和服务器之间传输的数据(密钥是单独传输的,这是另一回事。)所以。对机制感兴趣。我知道JS没有内置加密功能,PHP也有很多,但不是都可以正常解码UTF8。

问题:是否有针对此类问题的现成解决方案(如果可能,请提供示例)?

4

2 回答 2

1

我已经用pidCrypt解决了这个问题,它在 JavaScript 中有一个有效的 RSA 实现。还有我从未使用过的jCryption 。

我最近不得不在几乎唯一有效的情况下实现这一点:我们将数据离线存储在应用程序缓存中,并且不可协商的业务要求声明它在那里被加密。除非您正在做类似的事情,否则答案是使用 SSL 并放弃任何实现 JS 解决方案来解决此问题的希望。您需要SSL 才能将代码安全地传输到浏览器,否则您在浏览器中所做的任何加密都是不安全的。

于 2012-12-04T17:53:04.803 回答
0

总的来说,我找到了解决问题的方法。我使用了算法 AES CBC 256 位。库 Gibberish AES (https://github.com/mdp/gibberish-aes) 和 fork on php (https://github.com/ivantcholakov/gibberish-aes-php/blob/master/GibberishAES.php)

于 2012-12-06T11:14:38.327 回答