我们有一个多客户系统,客户端用Flash编写,服务器用Java编写。目前,通过使用flash.net.Socket
在Flash中完成通信,协议是用JSON编写的。服务器使用自定义端口接收连接,然后继续与每个客户端通信。正如所料,数据在两个阵线上作为原始字节发送和接收,然后根据需要进行解码。
我们想加密客户端和服务器之间的通信。我对公钥/私钥加密有一些基本的了解,但我不知道交换密钥的最佳方式是什么,或者在这两种语言中有哪些库可用。
攻击此问题的最佳策略是什么?我应该从哪里开始寻找实现此加密的库/方法?
答案 0 :(得分:0)
无需重新发明轮子。使用ssl / tls。我们在几个商业项目中使用了as3 ssl实现。确保为as3组件创建根证书存储,并使用至少为服务器证书的根ca填充它。在服务器上,使用java内置的ssl服务器套接字。
或者,您可以取消自定义服务器(如果可能的话),并使用https,就像您在HTML / JavaScript中使用Ajax一样。