PHPackages                             jiriferkl/dumbpass - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. jiriferkl/dumbpass

ActiveLibrary[Security](/categories/security)

jiriferkl/dumbpass
==================

Smart control of dumb passwords. Guard your users from security problems by preventing them from having dumb passwords.

v1.0.1(9y ago)16301[4 issues](https://github.com/jiriferkl/dumbpass/issues)MITPHPPHP ^7.0

Since Jan 23Pushed 9y ago1 watchersCompare

[ Source](https://github.com/jiriferkl/dumbpass)[ Packagist](https://packagist.org/packages/jiriferkl/dumbpass)[ Docs](https://github.com/jiriferkl/dumbpass)[ RSS](/packages/jiriferkl-dumbpass/feed)WikiDiscussions master Synced today

READMEChangelog (2)Dependencies (7)Versions (3)Used By (0)

Dumbpass
========

[](#dumbpass)

[![Latest Stable Version](https://camo.githubusercontent.com/0a7181452dcffb3bcb417d0c7665e8094c28b21e570fb26a475959cfa7284cea/68747470733a2f2f706f7365722e707567782e6f72672f6a6972696665726b6c2f64756d62706173732f762f737461626c65)](https://packagist.org/packages/jiriferkl/dumbpass)[![Build Status](https://camo.githubusercontent.com/56d18f9683938b4705336c045033f34e14b220ce53734b5ca640dd14db287561/68747470733a2f2f7472617669732d63692e6f72672f6a6972696665726b6c2f64756d62706173732e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/jiriferkl/dumbpass)[![PHPStan](https://camo.githubusercontent.com/441b5874ce4df0a2defc892979c96c46889b69cb32119d04f0b48626349f8bc9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d656e61626c65642d627269676874677265656e2e7376673f7374796c653d666c6174)](https://github.com/phpstan/phpstan)[![License](https://camo.githubusercontent.com/15d733c8648d3fa73b8f46d2286a81ad46a91333737f495c50f941f417330b48/68747470733a2f2f706f7365722e707567782e6f72672f6a6972696665726b6c2f64756d62706173732f6c6963656e7365)](https://packagist.org/packages/jiriferkl/dumbpass)

Smart control of dumb passwords. Guard your users from security problems by preventing them from having dumb passwords.

Introduction
------------

[](#introduction)

This package can be used to verify the user password. It checks list of **10,000 worst passwords** as analyzed by an IT security analyst.

With this package you have to set absolutely nothing. **Everything is pre-set.** But you can set everything you like.

This package

- **Checks password strength** (length, numbers, capital letters..) Default settings is bellow.
- Checks list of **10,000 worst passwords**
- Returns result in **simple object** which contains:
    - boolean result variable
    - array with error messages (If any)
- **Default language is EN** but you can choose another (examples bellow)

Install
-------

[](#install)

Via composer

```
composer require jiriferkl/dumbpass
```

You must have **PHP 7.0**.

Use
---

[](#use)

Default setting is:

- Minimum length 9 characters
- Password has to contain at least one number
- Password has to contain at least one capital letter
- Password has to contain at least one lower case letter
- Password has to contain at least one special character
- Password has to be original not just too common

So it is very simple:

```
$pass = 'P@ss_wo!rd!5';

$result = DumbPass::verify($pass);
```

I don't want to use default setting
-----------------------------------

[](#i-dont-want-to-use-default-setting)

So go ahead.

```
$pass = 'P@ss_wo!rd!5';

$criteria = new Criteria();
$criteria->enforceCapitalChars(TRUE)
	->enforceNumberChars(TRUE)
	->enforceSpecialChars(TRUE)
	->enforceLowerCaseChars(TRUE)
	->allowCommonPassCheck(TRUE)
	->setLength(8);

$result = DumbPass::verify($pass, $criteria);
```

Can I choose different language please?
---------------------------------------

[](#can-i-choose-different-language-please)

Yes.

```
$pass = 'P@ss_wo!rd!5';

//null -> default object
$result = DumbPass::verify($pass, NULL, Localization::get(Localization::CZ));
```

My language isn't an option
---------------------------

[](#my-language-isnt-an-option)

Well you have two options:

- Send pull request (It's easy and it's only a few lines.)
- Implements interface and make your own Messages class. It has one simple method.

```
$pass = 'P@ss_wo!rd!5';

$messages = new Messages(); //implements IMessage

//null -> default object
$result = DumbPass::verify($pass, NULL, NULL, $messages);
```

Now the messages are in your language. Congrats.

Do you have your own most common password list?
-----------------------------------------------

[](#do-you-have-your-own-most-common-password-list)

OK.

```
$pass = 'P@ss_wo!rd!5';

$passList = new PassList(); //implements IPassList

//null -> default object
$result = DumbPass::verify($pass, NULL, NULL, NULL, $passList);
```

Test
----

[](#test)

```
composer test
```

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 96% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

2

Last Release

3443d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/23029419?v=4)[Jiří Ferkl](/maintainers/jiriferkl)[@jiriferkl](https://github.com/jiriferkl)

---

Top Contributors

[![jiriferkl](https://avatars.githubusercontent.com/u/23029419?v=4)](https://github.com/jiriferkl "jiriferkl (24 commits)")[![Majkl578](https://avatars.githubusercontent.com/u/144181?v=4)](https://github.com/Majkl578 "Majkl578 (1 commits)")

---

Tags

dumb-passwordspasswordpassword-checkerpassword-safetypassword-strengthpasswordverifyvalidatejiriferkldumbpasspassword checkcommon passwordsdumb passwords

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/jiriferkl-dumbpass/health.svg)

```
[![Health](https://phpackages.com/badges/jiriferkl-dumbpass/health.svg)](https://phpackages.com/packages/jiriferkl-dumbpass)
```

###  Alternatives

[ircmaxell/password-compat

A compatibility library for the proposed simplified password hashing algorithm: https://wiki.php.net/rfc/password\_hash

2.1k57.7M127](/packages/ircmaxell-password-compat)[symfony/password-hasher

Provides password hashing utilities

814146.2M148](/packages/symfony-password-hasher)[bjeavons/zxcvbn-php

Realistic password strength estimation PHP library based on Zxcvbn JS

87118.6M76](/packages/bjeavons-zxcvbn-php)[rych/phpass

PHP Password Library: Easy, secure password management for PHP

248837.5k4](/packages/rych-phpass)[mikemclin/laravel-wp-password

Laravel package that checks and creates WordPress password hashes

863.5M2](/packages/mikemclin-laravel-wp-password)[bordoni/phpass

Portable PHP password hashing framework

244.6M28](/packages/bordoni-phpass)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
