【问题标题】:Check if a secret code belongs to a user client-side?检查密码是否属于用户客户端?
【发布时间】:2020-07-22 23:27:15
【问题描述】:

我有一个应用程序,用户通过在文本字段中输入唯一的数字代码来完成签到。他们的号码被发送到服务器,如果发现它属于某个用户,则该用户被签入。通常一次输入多个号码,所有号码都在一次上传中发送。任何找不到对应用户的号码都会被退回。

我想在前端添加验证,它可以告诉用户他们输入的代码是否存在于数据库中,但不知道它属于谁。假设:

  1. 数据库中的所有代码都是唯一的,并且是唯一的数字,例如1234567;
  2. 代码不是由用户选择的,而是预先确定的,不能更改;和
  3. 所有用户都缓存在前端(没有他们的密码);

这种检查可以做吗?

我考虑为每个用户存储用户代码的md5 哈希值,但这很容易逆转。我也可以在哈希中添加随机盐;它会混淆该过程,但用户仍然可以对其进行解码,因为源 Javascript 是可见的。

这是一个可行的任务吗? 如果没有,我怎样才能尽可能地混淆用户的密码?

【问题讨论】:

  • 这个“密码”与密码有何不同?

标签: javascript cryptography


【解决方案1】:

解决方案是使用SHA256...

【讨论】:

    猜你喜欢
    • 2017-11-28
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 2014-04-03
    • 1970-01-01
    • 1970-01-01
    • 2011-04-12
    相关资源
    最近更新 更多