我的团队必须在localnet html / js应用程序和同一网络中的服务器之间共享数据,并在websocket上进行监听。 第一个想法是简单地使用get
将变量发送到服务器http://192.168.1.100:8080/var=hello
它很简单且有效,但我们必须在数据交换中添加安全级别,在Aes中加密所有内容,然后对结果进行十六进制以将其作为纯字符串发送。
我们找到的最佳解决方案是Crypto-JS https://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
我们缺少什么?
答案 0 :(得分:0)
好的,我知道了,文字是十六进制的。 尝试在那里decyphering: