帮助设计安全的网络协议

时间:2011-06-17 09:31:07

标签: networking authentication network-programming network-protocols public-key-encryption

在应用程序中,我有一个网络服务器和客户端。 握手后,让我们说客户端发送"userId sessionId SOME_COMMAND param param param"

我已经识别出客户端,并且相应地在服务器上检查了sessionId,因此身份不再是问题。

但我想阻止黑客修改邮件或创建错误信息,例如发送"userId sessionId SOME_COMMAND paramModified paramModified paramModified"

我考虑过使用一对私有/公共加密密钥,并在邮件本身中发送消息的哈希值。但由于它在客户端程序中自动化,我可能必须在握手期间发送公钥。所以黑客可以简单地检索它并生成适当的哈希值。

我也可以使用复杂的加密种子或算法,但我对黑客的经验告诉我他们会反编译任何内容。

所以底线是:我可以隐藏服务器上运行的所有内容,但我无法隐藏客户端程序上的任何内容。我想禁止修改客户端程序应该发送的消息。

我甚至不知道是否可能。我对任何建议持开放态度。顺便说一下,我正在使用Java,尽管它不应该非常相关。感谢。

1 个答案:

答案 0 :(得分:2)

算了。像其他人一样使用SSL。有些复杂问题你甚至都没有开始解决。