C# 连接两台服务器并防止MITM攻击的最佳方法
您认为通过C#web服务连接两台服务器的最佳方式是什么? 我不想使用SSL,因为它会消耗大量服务器CPU,而且我不想在机器上增加更多负载。而且,它更慢C# 连接两台服务器并防止MITM攻击的最佳方法,c#,php,web-services,security,C#,Php,Web Services,Security,您认为通过C#web服务连接两台服务器的最佳方式是什么? 我不想使用SSL,因为它会消耗大量服务器CPU,而且我不想在机器上增加更多负载。而且,它更慢 也许OAuth2、WS-Security或任何自定义服务(如发送令牌(nonce+时间戳))可以防止重发攻击。谢谢你的建议 WS-Security具有相互身份验证和消息签名。此模式要求发送服务器具有接收方的证书(public ky)。然后,发送方可以通过验证签名来检查响应是否被篡改,并可以检查用于签名响应的签名证书是否是接收方的正确证书。我的赌注
也许OAuth2、WS-Security或任何自定义服务(如发送令牌(nonce+时间戳))可以防止重发攻击。谢谢你的建议 WS-Security具有相互身份验证和消息签名。此模式要求发送服务器具有接收方的证书(public ky)。然后,发送方可以通过验证签名来检查响应是否被篡改,并可以检查用于签名响应的签名证书是否是接收方的正确证书。我的赌注仍然是SSL。使用客户端证书来验证输入请求。它被大规模使用以保护敏感信息交换,特别适合于防止MITM SSL的开销很可能不会显著地影响CPU的使用,您测量过吗?如果您正在处理大量的小请求,那么握手可能是一个问题,但是如果我正确地理解您,那么您只有两台服务器,在这种情况下,开销(如果我对SSL/TLS的理解是正确的)将在SSL会话的生存期内分摊 简短回答:添加SSL不太可能对您的CPU使用造成不利影响,但在下结论之前,您应该始终分析您的场景 更多阅读
在中间的攻击中,有人在你和你连接的机器之间插手,你对他进行认证,他验证了你的目的地,然后继续胡佛你的信用卡号码,当你从星巴克订购鲜花时,因为你忘了那天是你爱人的生日。如果你使用适当的标点符号,大写你的I,诸如此类的事情,你通常会在堆栈溢出时得到更好的响应。一些新的筛选器甚至可能阻止您在不这样做的情况下提问。这是否与在服务器和客户端上同时使用SSL证书(以及证书验证)相同?没有SSL也会加密消息;这很可能会导致服务器性能问题。