eureka / component-password
PHP 密码库。
5.0.0
2024-03-12 11:18 UTC
Requires
- php: 8.1.*||8.2.*||8.3.*
- ext-mbstring: *
Requires (Dev)
- eureka/component-console: ^6.1.0
- friendsofphp/php-cs-fixer: ^3.51.0
- maglnet/composer-require-checker: ^4.7.1
- phpstan/phpstan: ^1.10.60
- phpstan/phpstan-phpunit: ^1.3.16
- phpstan/phpstan-strict-rules: ^1.5.2
- phpunit/phpcov: ^9.0.2
- phpunit/phpunit: ^10.5.12
Suggests
- eureka/component-console: Provide an lightway console to execute password script helper to generate password
This package is auto-updated.
Last update: 2024-09-12 12:18:42 UTC
README
生成、散列和验证安全密码。
使用方法
Composer
composer require "eureka/component-password"
密码生成器
<?php use Eureka\Component\Password\PasswordGenerator; use Eureka\Component\Password\StringGenerator; //~ Use service generator $length = 16; // default $alpha = 0.6; // default $numeric = 0.2; // default $special = 0.2; // default $generator = new PasswordGenerator( new StringGenerator() ); $password = $generator->generate($length, $alpha, $numeric, $special); echo $password->getPlain() . PHP_EOL; echo $password->getHash() . PHP_EOL;
密码
<?php use Eureka\Component\Password\Password; //~ Just define password $password = new Password('mySecretPassword'); echo $password->getHash() . PHP_EOL; echo $password->getPlain() . PHP_EOL;
密码检查器
<?php use Eureka\Component\Password\PasswordChecker; //~ Just define password $passwordChecker = new PasswordChecker(); $passwordPlain = 'mypassword'; // From login form $passwordHash = '...'; // Retrieved from db for example echo 'Is valid password: ' . $passwordChecker->verify($passwordPlain, $passwordHash) . PHP_EOL;
脚本 - 密码生成器
vendor/bin/console password/script/generator --help
将输出以下内容
Use : bin/console Eureka\Component\Password\Script\Generator [OPTION]... OPTIONS: -g, --generate Generate password -l ARG, --length=ARG Password length -a ARG, --ratio-alpha=ARG Alphabetic latin characters ratio -n ARG, --ratio-numeric=ARG Numeric characters ratio -o ARG, --ratio-other=ARG Other characters ratio
贡献
查看 CONTRIBUTING 文件。
安装/更新项目
您可以使用以下命令安装项目
make install
并且使用以下命令更新
make update
注意:对于组件,composer.lock
文件不会被提交。
测试 & CI(持续集成)
测试
您可以使用以下命令在您的环境中运行单元测试(带有覆盖率)
make tests
您可以使用以下命令在您的环境中运行集成测试(不带覆盖率)
make integration
为了获得更漂亮的输出(但不带覆盖率),您可以使用以下命令
make testdox # run tests without coverage reports but with prettified output
代码风格
您还可以使用以下命令运行代码风格检查
make phpcs
您还可以使用以下命令运行代码风格修正
make phpcsf
检查缺失的显式依赖项
您可以使用以下命令检查是否存在任何缺失的显式依赖项
make deps
静态分析
要执行代码的静态分析(使用 phpstan,默认为 lvl 9),您可以使用以下命令
make analyse
为了确保您的代码仍然与当前 Deezer 支持的版本以及未来的 PHP 版本兼容,您需要运行以下命令(两个都是必需的,以实现全面支持)
最小支持版本
make php81compatibility
最大支持版本
make php83compatibility
CI 模拟
最后,“辅助”命令,您可以在提交和推送之前运行的是
make ci
许可证
本项目目前采用 The MIT License (MIT)。有关更多信息,请参阅 LICENCE 文件。