PHP Native Password Hash

Makes WordPress use PHP's native password_hash() functions for portable, stronger, and time-attack safe bcrypt and Argon2 hashes.

v3.0Ayesh KarunaratneUpdated Added 2k+ installs100% rating
90
Score
7
Errors
6
Warnings
+0
Change

Category Scores

Security89
Repo86
Performance100
Maintainability91

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

13 findings

Maintainability

7

5 issue groups

Repo Compliance

3

3 issue groups

I18n

2

2 issue groups

Security

1

1 issue group

WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "check_password".2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "check_password".

WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$hasher".2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$hasher".

WARNINGMaintainabilityNon-prefixed functionFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "wp_password_hash_include".1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "wp_password_hash_include".

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<div class='notice notice-error'><p>{$message}</p></div>"'.1
Category
Security
Occurrences
1
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<div class='notice notice-error'><p>{$message}</p></div>"'.

ERRORI18nNon Singular String Literal DomainThe $domain parameter must be a single text string literal. Found: self::TEXT_DOMAIN1
Category
I18n
Occurrences
1
Severity
error

Sample message

The $domain parameter must be a single text string literal. Found: self::TEXT_DOMAIN

ERRORI18nNon Singular String Literal TextThe $text parameter must be a single text string literal. Found: $message1
Category
I18n
Occurrences
1
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: $message

ERRORMaintainabilitylibrary core filesLibrary files that are already in the WordPress core are not permitted.1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Library files that are already in the WordPress core are not permitted.

ERRORMaintainabilityMissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

ERRORRepo Complianceoutdated tested upto headerTested up to: 6.3 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Tested up to: 6.3 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.

ERRORRepo Complianceplugin header no licenseMissing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Missing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.

Show 1 more
WARNINGRepo Compliancereadme parser warnings too many tags1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

One or more tags were ignored. Please limit your plugin to 5 tags.

Score History

First score snapshot

v3.0

90

Latest

Findings
13
Errors
7
Warnings
6
Check
2.0.0

Related Plugins

98
Disable Password Reset

1k+ active installs

97
Password bcrypt

2k+ active installs

97
Smart Passworded Pages

2k+ active installs

80
Multiple Post Passwords

2k+ active installs

61