android - 登录过程应该如何?

标签 android algorithm authentication

我对登录过程的外观有疑问。我已经编写了客户端和服务器,我的登录过程如下所示:

  1. 不要输入电话和密码 -> 点击“登录/注册”
  2. 客户端在我放置电话号码和密码的位置创建用户对象。
  3. 客户端向服务器发送请求,即整数 = 1 -> 服务器正在等待用户对象。
  4. 客户端将新创建的用户 (2)) 发送到服务器。客户正在等待答案(整数)
  5. 服务器正在检查用户是否存在:
    • 如果是,下一步是检查密码,如果通过是 OK 服务器发送给客户端答案 1,然后从数据库发送用户对象和用户详细信息。
    • 如果是,但不通过,则答案为 0,并且不发送任何内容,
    • 如果否,则答案为 -1,并且不发送任何内容。
  6. 客户得到答案:
    • int = 1 -->(user exist, pass ok) --> 获取对象,从对象中获取数据
    • int = 0 -->(user exist, pass not ok) --> Toast "try again"
    • int = -1 --> (user not exist) -->go to profil
  7. 如果答案是 -1 我打开我的 Profil Activity 并从用户那里获取详细信息,将这些详细信息放入用户对象并使用请求代码 int = 2 发送到服务器 --> 写入用户做用户列表

登录方式好吗?我是否应该只发送原始整数作为电话号码和密码而不是用户对象。每次我想连接到服务器时,我应该发送带有我想做什么的信息的请求代码,还是对此有其他想法。

最佳答案

状态“用户存在,传递不正常”对我来说有点问题。 这样您就可以将攻击分为两个阶段。

  1. 尝试可能的用户名(您的服务器显示用户名是否存在,与密码无关)
  2. 对于已知的现有用户名,请尝试使用可能的密码字典。

因此,如果用户名存在,我建议不要泄露信息。

关于android - 登录过程应该如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38188100/

相关文章:

php - Yii2 注销管理部分无法正常工作

java - 我如何在 recyclerview 中检测到它何时结束?

android - 通过html5加载sdcard视频--android

android - 自升级到 Robolectric 4.3 以来,ListView 的 onItemClickListener 得到一个空 View

c# - 检查数组中的多个元素是否包含相同的值

c++ - 反转字符串中的单词c++

c# - 在 ASP Net Core 中实现两个身份验证选项( token 和证书)

java - Foursquare API 场馆搜索返回空场馆

java - 数组中的重复项 - 可以在 o(n) 中解决吗?

web-services - 如何在 Java EE 中实现登录?