Download the PHP package barzo/password-generator without Composer
On this page you can find all versions of the php package barzo/password-generator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download barzo/password-generator
More information about barzo/password-generator
Files in barzo/password-generator
Package password-generator
Short Description PHP library for generating easy to remember but hard to guess passwords
License MIT
Homepage https://github.com/denys-potapov/password-generator
Informations about the package password-generator
Phrase password generator
PHP library for generating easy to remember, but hard to quess passwords. Inspired by xkcd comic, library generates phrases from frequently used words:
- English phrases (example "throat fast only idea")
- German phrases (examle "laut welt ganze liter")
- Russian phrases (example "тоже металл пора подача")
- Russian transliterated phrases (example "kater nekiy zabrat dazhe")
Install
Via Composer
Basic usage
Generate password with default length (4 words) and default separator (space).
Each of above functions accepts length and separator paramenetrs.
Advanced usage
Call static function Generator::generate to generate passwords from wordlists. Params
- wordlists - array of WordListInterface. If array is shorter then length, function would iterate from the beginning of array.
- lenght - password length in words. Default - 4
- separator - words separator. Default - ' '(space)
Example:
Word lists
English
List of 2048 most frequently used English words.
Class | Comment | Word lenghth | Example |
---|---|---|---|
WordList\En | all words | 4-6 | have, that |
WordList\En\Nouns | nouns | 4-6 | time, year |
WordList\En\Verbs | verbs | 4-6 | have, would |
WordList\En\Adjectives | adjectives | 4-8 | other, good |
German
List of 2048 most frequently used german words(source). Words with diacritic letters (ä, ö, ü) and eszett (ß) excluded.
Class | Comment | Word lenghth | Example |
---|---|---|---|
WordList\De | all words | 4-6 | sich, nicht |
Russian Transliterated
List of 2048 transliterated most frequently used Russain words (source). "Hard" to transliterate letters (ь, ъ) excluded.
Class | Comment | Word lenghth | Example |
---|---|---|---|
WordList\RuTranslit | all words | 4-6 | chto, etot |
WordList\RuTranslit\Nouns | nouns | 4-8 | chelovek, vremya |
WordList\RuTranslit\Verbs | verbs | 4-8 | moch, skazat |
WordList\RuTranslit\Adjectives | adjectives | 4-8 | novyy, bolshoy |
Russian
Lists consist of 2048 most frequently used Russain words (source).
Class | Comment | Word lenghth | Example |
---|---|---|---|
WordList\Ru | all words | 4-6 | быть, этот |
WordList\Ru\Nouns | nouns | 4-8 | человек, время |
WordList\Ru\Verbs | verbs | 4-8 | быть, мочь |
WordList\Ru\Adjectives | adjectives | 4-8 | новый, большой |
Security
If OpenSSL extension avaivable library would use openssl_random_pseudo_bytes for random number generation.
Testing
Changelog
1.0.0
- Update namespaces for psr-4 and composer 2 (thanks to @parkourben99)
0.4.0
- Updated WordList\Ru. Now only words with length from 4 to 6
- Updated WordList\RuTranslit. Now only words with length from 4 to 6
- Added German words list
Contributing
To add new language open an issue with link to frequency dictionary.
Pull requests are welcome.
Credits
License
The MIT License (MIT). Please see License File for more information.