使用 php 生成密码哈希


Generate the password hash using php

我有一个加密形式的用户数据库及其密码。我想让用户使用用户名和密码登录网站。对于身份验证,我需要知道他们的加密类型,以便我可以将输入的密码与存储的密码相匹配。我已经尝试了很多算法,但我无法制定加密机制。这是一个测试用例

原始密码:阿尔文

数据库中的密码:f9b0213127225c1c74d6662dee8acca297eff9e0

密码加密 : sha1_v2.4.

: 9J1JYSE241V7cw0S8okkssgg448wgcogsggww0

我想做的是从原始密码在数据库中创建密码。

有关如何在DB中将原始密码转换为密码的任何提示

P.S表格由银条CMS创建

编辑

我们不再使用银条CMS,并将我们的网站转换为移动应用程序。因此,使用银条或其功能不是一种选择。但是,我们使用的成员表包含所有成员的数据,包括身份验证信息。

> OP的评论中有很多仇恨。但它被误导了 - OP 并没有试图解码任何东西(并且在论坛上更好地解释了它:http://www.silverstripe.org/community/forums/migrating-a-site-to-silverstripe/show/101337)

简而言之,尝试使用 SilverStripe 的数据库对来自外部源的用户进行身份验证(因此直接使用 Member 类不是一回事)。

要提供实际答案,请执行以下操作:

加密方法存储在成员表上,默认情况下为"河豚",并且可以因用户而异。您需要三个数据字段:

  • 会员密码加密
  • 会员盐
  • 会员密码

第一个定义了如何使用第二个,然后允许计算第三个(从而检查)。

合理标准的东西。有关更详细/具体的信息,请参阅此处定义的类(参见"直接已知子类"):http://api.silverstripe.org/3.1/class-PasswordEncryptor.html