java - 是否可以/有效地建立仅包含安全登录但包含非安全消息的 TCP 连接?

标签 java security sockets client-server

假设我正在编写一个聊天服务器和客户端,允许用户使用用户名和密码登录。现在我可以以纯文本形式发送和接收信息,但存在信息可能被拦截的风险。因此 socket 应固定以保护用户。我对证书或验证身份不感兴趣,我只是想确保所提供的信息不会有暴露的风险。我对保护发送/接收的后续消息也不感兴趣。采取什么好方法?

  1. 我可以透明地用安全套接字替换常规套接字吗?
  2. 是否存在与 我可能想要的安全套接字 避免非 secret 信息 消息?

我更喜欢 java 指针/示例,但也对其他语言感兴趣。

最佳答案

这不是一个有效的用例。为什么要进行身份验证,只是为了允许攻击者介入并伪造随后发送和接收的信息?

SSL 不仅仅是为了保密。它还提供完整性:交换的每个数据包都受到消息身份验证代码的保护,因此中间人无法更改内容。

如果内容缺乏完整性保护,则连接实际上是匿名的。既然如此,为什么还要假装进行身份验证呢?

关于java - 是否可以/有效地建立仅包含安全登录但包含非安全消息的 TCP 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1584177/

相关文章:

java - java中解析多个json对象

javascript - 是否有必要对 HTML 表单中的静态信息进行客户端验证?

java - java的int序列化数组

sockets - 有一个多ip接口(interface)。如何选择其中一个来建立传出连接?

java - 客户端未收到加密后数据被截断

java - JNA在windows平台上映射LPCSTR

java - GWT 编译后部署的应用程序不反射(reflect)服务器端的更改

java - 正确关闭 URLConnection 和 InputStream?

security - 具有声明式安全性的 JSP 登录 - 实际身份验证是如何发生的?

java - 如何签署自定义 JCE 安全提供程序