在JS和C#之间共享加密数据,用于虚拟对象



我的团队必须在localnethtml/js应用程序和同一网络中监听websocket的服务器之间共享数据。第一个想法是简单地用get将变量发送到服务器

http://192.168.1.100:8080/var=hello

它简单有效,但我们必须为数据交换添加一个安全级别,在Aes中对所有内容进行加密,然后将结果作为纯字符串发送。

我们发现的最好的解决方案是CryptoJShttps://code.google.com/p/crypto-js/我们可以按照示例对同一js块内的数据进行加密/解密,但无法在另一个软件上解密数据。

我们做:

var text = "Message";
var password = "Secret Passphrase";
var encrypted = CryptoJS.AES.encrypt(text, password);
var EnText = encrypted.ciphertext; //returns the hexed/encrypted text
var Key = encrypted.key;

它不适用于服务器上运行的c#代码,所以我们尝试了一个在线解密工具http://aes.online-domain-tools.com/传递密码和密钥,但类似地返回不可读的文本

JS生成的参考值

EnText: 5768c9b4d75e0cc32b610d9e6f518c36
Key: 005e316192f5162f7fd104ce2c9fe91de6c6f2977849dcd5878226022a7073be

我们缺少什么?

好的,我得到了,文本是十六进制的。尝试在那里取消键入:

http://www.unit-conversion.info/texttools/hexadecimal/

最新更新