我正在为 Windows Phone 8 制作一个安全的聊天应用程序。
我计划使用 ASMX SOAP 服务,我决定使用公钥加密技术来加密数据,但我对网络安全非常陌生。
我的方法是:
- 一旦用户注册,服务器就会生成一个公钥/私钥对。
- 然后将公钥发送回手机应用程序客户端,所有从客户端发送到服务器的数据将由客户端上的公钥加密,并由服务器上的私钥解密。
现在我想知道的是,对于服务器将发送给客户端的响应,这些响应将如何加密和解密?
如果服务器上的私钥用于加密响应,那么任何人都可以解密它,因为“公钥”是公开的。
这样做意味着我必须生成两个公私钥对,一个在服务器上生成,一个在客户端上生成。
一对将加密和解密发送到服务器的数据,而另一对(在客户端生成)将在从服务器发送数据作为响应时做同样的事情。