【问题标题】:Detecting password encryption type --can I import them into Django?检测密码加密类型——我可以将它们导入 Django 吗?
【发布时间】:2011-06-13 23:44:11
【问题描述】:

我有一个旧系统,其密码类似于 115c28e0578f262bde08e3de39ee9066。我不太确定它们是用 md5 还是 crypt 创建的,还是......创建它们的是一个 java 应用程序。

我的新系统使用 Python (Django),我尝试使用 md5()、sha1() 和 crypt() 对已知密码进行比较检查。他们都没有得到与这个遗留系统给我的结果相同的结果。

假设密码是在 java 中创建的,Python 的等效模块是否可以读取/转换它们,以便我可以将其导入 Django 项目?我希望不必让我的用户重设密码。

【问题讨论】:

    标签: java python passwords md5 sha1


    【解决方案1】:

    通常,您需要知道 Java 程序使用的确切算法。然后,您将能够在 Python 中重新创建相同的结果。 (如果不使用暴力破解,您无法从哈希中获取纯文本密码,但您应该能够重新创建相同的哈希算法,因此您可以根据哈希验证用户的密码)。

    当密码存储在 Java 应用程序中时,很有可能使用称为 salt 的东西进行哈希处理。这是密码中添加的一些随机信息,目的是为了抵御字典攻击。如果是这种情况,您将需要知道用于盐的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 2022-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-01
      • 2019-10-17
      相关资源
      最近更新 更多