java - 是否可以确保使用的客户端来自特定主机?

标签 java security certificate

我有一个服务器应用程序和一个使用 java 创建的客户端应用程序,它将与服务器应用程序进行通信。但是,由于我没有强调服务器端的安全性,如果黑客创建自己的客户端来连接我的服务器,那么攻击服务器应用程序真的很容易。我想确保与我的服务器通信的客户端应用程序是我创建的真实客户端。我将客户端上传到特定主机,例如 www.abcd.com。现在,我可以确定连接到我的服务器的客户端何时来自该主机。我了解如何与值得信赖的签名者签署它,但我正在寻找一个便宜的选择。

最佳答案

不,这是不可能的。如果是的话,DRM 就会起作用,但每个人都知道它已经被彻底破坏了。

要真正安全,客户端必须是具有“可信平台模块”的机器,TPM,支持所谓的远程认证。这允许服务器验证客户端是否真实且未被更改。但我从未听说过这种技术在现实世界中的应用,尽管 TPM 很常见,但我不确定远程证明功能是否如此。

关于java - 是否可以确保使用的客户端来自特定主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21564354/

相关文章:

java - 单个文件中目标命名空间的多个 <schemaBindings>

security - 可以在没有 SSL 的情况下设计和测试安全的 Web 应用程序吗?

http - net::ERR_CERT_AUTHORITY_INVALID 尝试在本地调用 API 时

javascript - Firebase 安全 : Permission Denied Until Page Refresh

security - OAuth授权请求中的 'state'参数的用途是什么

c# - 检查 Windows keystore 中是否安装了最终用户证书?

rest - 选择 SSL 证书

java - Gson 不会将值写入使用 IntanceCreator 创建的对象

java - 需要帮助根据比较值修改列表(ConcurrentModification)

java - 如何获取推送的键值并更新键值的子值