我试图找出Drupal 6/7在默认情况下用于存储密码的安全性.是MD5,AES,SHA吗?我一直找不到任何东西.

推荐答案

Drupal 8和Drupal 7默认使用SHA512和盐.他们多次通过PHP的hash函数运行散列,以增加生成密码最终散列的计算成本(一种称为stretching的安全技术).

在Drupal 8中,实现是面向对象的.有一个PasswordInterface定义了一个散列方法.该接口的默认实现在PhpassHashedPassword类中.该类的hash方法调用传入SHA512的crypt方法作为散列算法、密码和生成的salt.该类的crypt方法与Drupal 7的_password_crypt()方法几乎相同.

在Drupal 7中,实现分为两个全局函数:user_hash_password()_password_crypt().

Drupal 6使用不含盐的MD5.相关函数为user_save().

Mysql相关问答推荐

我需要为用户提供MySQL视图和存储的 routine ,但不是基础表

筛选器中的Case When语句

MySQL 8.0.34-从后端系统管理AWS RDS上的持久连接内存使用

在时间戳上搜索大的MySQL表很慢

计算符合字段值只能包含一种事件类型这一事实的记录

GoRM中行最大值查询返回"0"

特定时间段内每个客户的运行总计

条件触发mysql

从 mysql RDS 导出数据以导入 questDb

谁能帮我优化where子句

MYSQL:如何根据之前的相关记录获取记录

MySQL 中的 LATERAL 语法 - 是否只是说左表首先执行以便下一个可以引用它?

查询以查找可用时隙

获取Count(*)占GROUP BY中所有项目数的百分比

索引和多列主键

org.hibernate.InstantiationException:没有实体的默认构造函数::principal.Cliente

PDO:MySQL 服务器已消失

ASP.NET EntityFramework 获取数据库名称

MySQL导入数据库但忽略特定表

获取最后一组不同的记录