【发布时间】:2014-06-20 18:20:46
【问题描述】:
我正在为 Windows Phone 8 开发一个安全的聊天应用程序。
我计划使用 ASMX SOAP 服务,我决定使用公钥加密技术来加密数据,但我对网络安全非常陌生。
我的做法是:
- 用户一注册,服务器就会生成一个公钥/私钥对。
- 然后将公钥发送回手机应用程序客户端,并将所有数据发送回手机应用程序客户端。 从客户端发送到服务器将由客户端上的公钥加密 并通过服务器上的私钥解密。
现在我想知道的是,对于服务器将发送给客户端的响应,这些响应将如何加密和解密?
如果服务器上的私钥用于加密响应,那么任何人都可以解密它,因为“公钥”是公开的。
这样做意味着我必须生成两个公私钥对,一代 在服务器上,在客户端上一代。
一对将加密和解密发送到服务器的数据,而另一对(在客户端生成)将在从服务器发送数据作为响应时执行相同的操作。
【问题讨论】:
-
考虑使用 TLS,它会为您完成所有这些复杂的事情。
-
因为这是一个大学项目,我被要求自己实现安全而不使用 SSL !!
-
然后看看现有的协议,比如 TLS、OTR、CurveCP 或 Noise。
-
请务必编辑您的问题,以明确您因作业而受到人为限制。
-
是的,当然!我会记住这一点..
标签: c# cryptography network-security