【问题标题】:migrate ruby on rails salted bcrypt to md5将 ruby​​ on rails salted bcrypt 迁移到 md5
【发布时间】:2015-09-29 02:08:48
【问题描述】:

我正在尝试将 ruby​​ on rails 应用程序迁移到 django,并且遇到了这样一个事实,即 RoR 应用程序正在加密 2 个字段中的用户密码,crypted_pa​​ssword 和 password_salt,此外还有 persistence_toke,所以有什么可玩的用简单的 md5 散列密码替换它而不重置所有用户的密码?

【问题讨论】:

  • 为什么要使用 MD5?只是不要那样做。
  • Django 有一个 bcrypt 密码哈希器。如果您可以将两个数据库字段组合成一个使用与 Django 密码相同语法的字段,您可能能够使用这样的加密密码,而无需任何额外的用户交互。然后Django会在用户登录时自动将密码升级为最安全的算法。

标签: ruby-on-rails ruby django


【解决方案1】:

您需要以纯文本形式存储密码(使用MD5 或任何其他算法)。也就是说:您需要从当前的 bcrypted 版本恢复用户的密码。而避免被解密的可能性正是bcrypt存在的原因。

因此,答案是:不,没有用户的帮助,您无法做到这一点。

顺便说一句,MD5 被认为是不安全的。您应该努力让bcrypt 版本与Django 一起使用。

【讨论】:

    猜你喜欢
    • 2015-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-09
    • 2012-06-02
    • 2013-11-03
    • 1970-01-01
    • 2014-04-17
    相关资源
    最近更新 更多