Java 验证密码

标签 java security passwords

Possible Duplicate:
Java authentication security

我有一个中央admin应用程序实例,其中 judge帐户已创建。为了使用这个法官帐户, judge来自另一台计算机的应用程序实例需要通过中央 admin 进行身份验证。一个user应用程序的实例将向 admin 发送一些内容,谁会将其推给一位评委。

评委需要能够登录管理员并进行身份验证。 主要问题是,由于每个人都在同一个网络上并且没有 SSL(我对此无法控制),有人可以嗅探法官发送给管理员的任何内容,然后自己发送该数据并成为已获得法官身份。

最佳答案

显然,使用 SSL 是正确的方法。

如果这不是一个选项,您可以自己加密请求的内容并确保它只能使用一次。

您需要:

  • 生成包含用户名、密码和时间戳/随机值的加密 token 。 stackoverflow 上有一些关于加密/解密字符串操作的好示例。
  • 您的服务器必须确保每个 token 只能使用一次(例如保留 map )
  • token 会在有限的小间隔后过期......

这并非不可破解,但可以防止常规嗅探器重复使用凭据。

关于Java 验证密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12334237/

相关文章:

php - 我的代码对 SQL 注入(inject)有多脆弱?

java - 在 JPanel 中对齐 JTextArea

Java渲染循环和逻辑循环

ruby - 如何在 Ruby 中设置和使用 SHA1 哈希

android - 如何以编程方式在 Oreo 中创建 wifihotspot?

php - 无需发送电子邮件即可安全重置密码

java - getText() 与 getPassword()

java - 不匹配的输入异常 : Cannot deserialize instance of `java.lang.Integer` out of START_OBJECT token

java - 在 MultipartEntityBuilder 中编码文件名

url - 在 Codeigniter 中加密 uri 段