【发布时间】:2016-10-26 01:27:15
【问题描述】:
我目前正在开发一个客户端-服务器应用程序。我有一些数据要在客户端加密并在服务器端解密。
我已经弄清楚了加密/解密部分并且可以正常工作。我的问题是密钥和盐。它们都是在运行时随机生成的,然后再通过网络发送到服务器。
我的问题是:
- 如果 Key 和 Salt 是随机的,如何让服务器解密数据??
我目前的解决方案是使用加密数据发送密钥和盐。
- 但这不会使我保护数据的努力付诸东流吗?
- 我应该在数据中“隐藏”密钥和盐吗? (附加在末尾/开头)
该帖子上的人建议联系服务器,让他知道我们要发送安全消息。然后他生成一个密钥并将其发送回给您。对于一个你希望一切都尽可能打包的游戏网络来说,这不是有点“太多”吗?
平时都在做什么?
谢谢。
【问题讨论】:
-
是的;你的解决方案没用。您需要定义一个安全模型,以便您知道哪些秘密存在于何处、何地/如何进行身份验证。你需要阅读blogs.msdn.microsoft.com/ericlippert/2011/09/27/…
-
您可能需要非对称加密(然后您将遇到关于如何传输和验证公钥的一系列不同问题)。
标签: c# network-programming cryptography aes