【发布时间】:2014-04-13 20:10:52
【问题描述】:
我一直在研究如何使用 OpenSSL 加密 Ruby 中的数据,并使用 JavaScript Forge 库解密 JavaScript 中的数据。
分发密钥的(不安全,但这仅用于研究)方法工作正常,即,我可以在 Ruby 中生成密钥并将它们放入 PEM 格式,将 PEM 传递给 JavaScript 并在 JavaScript 中恢复工作密钥,但是使用相同的密钥加密相同的字符串会产生两种不同的结果,因此两者之间的编码/解码显然不起作用。
有什么好的方法吗?
另一个问题是,将二进制数据字符串从 Ruby 传递到 JavaScript 而不会出现不兼容的类型错误,需要进行某种转换,例如,将加密数据转换为十六进制,但在 forge 库中使用此类信息证明是困难的。
【问题讨论】:
-
根据您使用的加密类型,使用相同的密钥加密相同的字符串可能不会得到相同的结果。 en.wikipedia.org/wiki/Deterministic_encryption
-
我明白了,我已经更新了我的问题以涉及另一个问题。但我认为公钥和 rsa 应该给出相同的结果
-
实际上,仔细阅读一下,我认为默认情况下 RSA 是确定性的。
-
您能描述一下您要完成的工作吗?
-
解决了我自己的问题。查看答案。
标签: javascript ruby-on-rails ruby encryption cryptography