我想制作一个服务器和客户端应用程序。所有客户端都通过 wifi 连接到服务器。我想使用 SSL 证书保护网络。
我发现了两种替代方案:
通过使用 SSLSocket (javax.net.ssl.SSLSocket)。
通过使用Radius 服务器。
我的问题是:上述两种选择是否相同?
答案1
虽然您的问题缺乏细节,但我认为“使用 SSLSocket”是指在客户端和服务器应用程序之间使用在应用程序级别实现的 TLS。“使用 Radius 服务器”可能是指客户端通过 Radius 服务器进行身份验证,然后使用来自该服务器的信息创建 WiFi 连接(即 WPA2 Enterprise)。
从安全性以及客户端和服务器的要求来看,这些都是完全不同的选择。WPA2 Enterprise 在网络级别(即系统之间)提供安全性,而 TLS 在应用程序级别(应用程序之间)提供安全性。
如果您只想保护客户端和服务器应用程序之间的通信,那么 TLS 是更好、更简单的选择。它也更安全,因为加密是系统上运行的应用程序之间的端到端加密,而不仅仅是系统本身之间的加密。此外,TLS 不需要 WiFi,它甚至可以在不同类型的网络连接(例如移动网络)下工作,而无需对应用程序进行任何更改,也不会失去任何保护。