WordPress 中是如何加密和验证密码的

WordPress使用wp_hash_password()和wp_check_password()函数分别加密和验证用户密码,它们基于开源的phpass类库实现。加密时通过PasswordHash生成密码哈希,验证时则对比明文与存储的哈希值是否匹配,确保密码安全。

WordPress基础教程
阅读时间: 12 分钟
最后更新时间:2025年11月13日

在 WordPress 中是如何加密和验证用户的密码的呢?WordPress 主要使用了两个函数:wp_hash_password() 和 wp_check_password()

wp_hash_password($password) 把一个纯文本加密成密文。

function wp_hash_password( $password ) {
  global $wp_hasher;
 
  if ( empty( $wp_hasher ) ) {
    require_once ABSPATH . WPINC . '/class-phpass.php';
    // By default, use the portable hash from phpass.
    $wp_hasher = new PasswordHash( 8, true );
  }
 
  return $wp_hasher->HashPassword( trim( $password ) );
}

wp_check_password($password, $hash, $user_id = '') 把纯文本和密文进行比对来验证密码。

function wp_check_password( $password, $hash, $user_id = '' ) {
  global $wp_hasher;
 
  if ( empty( $wp_hasher ) ) {
    require_once ABSPATH . WPINC . '/class-phpass.php';
    $wp_hasher = new PasswordHash( 8, true );
  }
 
  $check = $wp_hasher->CheckPassword( $password, $hash );
 
  return apply_filters( 'check_password', $check, $password, $hash, $user_id );
}

从上面的代码可以看出,WordPress 是使用一个 phpass(全称是:Portable PHP password hashing framework)开源的类生成和验证密码的。

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

在AI里面继续讨论:

曾凤祥

曾凤祥

WordPress技术负责人
小兽WordPress凭借15年的WordPress企业网站开发经验,坚持以“为企业而生的WordPress服务”为宗旨,累计为10万多家客户提供高品质WordPress建站服务,得到了客户的一致好评。我们一直用心对待每一个客户,我们坚信:“善待客户,将会成为终身客户”。小兽WordPress能坚持多年,是因为我们一直诚信。

相关文章

如何让线上业务更上一层楼

还没有WordPress网站

还没有WordPress网站

不管你从事什么行业,WordPress都会为你提供一个专业的主题模板。在WordPress市场上有成千上万的免费主题,适合很多中小企业。

查看所有模板
已经有WordPress网站

已经有WordPress网站

小兽WordPress诚邀你一起学习WordPress,愿与各方携手升级改善您的WordPress网站,一起交流网站加速,网站优化等问题。

马上交个朋友
微信联系
chat 扫码联系
模板建站
挑选模板
网站定制
免费诊断
咨询热线
咨询热线

189-0733-7671

返回顶部