我正在编写一个 Java EE 应用程序,它允许新用户自己注册,然后通过 Internet 登录。我将凭据存储在一个数据库中。
现在,有几种方法可以做到这一点,例如:
- 发送用户名和密码,最好通过 TLS/SSL 连接
- 发送用户名和密码的哈希码,最好通过 TLS/SSL 连接
- 使用安全远程密码协议(最好通过 TLS/SSL 连接?)
阅读一些文章,似乎安全远程密码协议(SRP)是要走的路。
但是随后阅读其他一些文章,似乎这仅用于某些低级层,例如 TLS/SSL 本身。
我仍然认为,建议在应用程序级别使用安全远程密码协议。
这个对吗?还是有一些很好的理由说明应用程序级别不需要这样做?