ensnared/pwgen

生成可发音的随机密码

1.0.1 2021-07-01 09:04 UTC

This package is auto-updated.

Last update: 2024-09-15 00:12:02 UTC


README

描述

这是一个用于创建随机可发音密码的非常简单的类。默认情况下,它还使用特殊字符和数字,但可以禁用。用户还可以自定义允许的字母组合,以及字符替换。

注意:此类并非基于,也与其名称相同的其他类似项目无关。

要求

  • PHP 7.4 或更高版本
  • mbstring 扩展

安装

使用 composer 安装

composer require ensnared/pwgen

使用方法

要创建具有默认设置的密码,只需使用 Password::create();

默认情况下,生成的密码长度在 8 到 12 个字符之间,并且将包括至少 2 个特殊字符和 2 个数字。

配置

以下方法可以配置行为。所有这些方法也有相应的 get 方法。

  • Password::setConsonants()
    • 设置密码创建中使用的辅音字母列表。
    • 默认为英语字母表中所有辅音字母。
  • Password::setDigits()
    • 设置添加到密码末尾的数字数量。
    • 默认为 2。
  • Password::setDoubleConsonantsAfterVowel()
    • 设置在密码中只在元音字母之后使用的双辅音字母列表。
  • Password::setDoubleConsonantsAnywhere()
    • 设置可以在密码中任何位置使用的双辅音字母列表。
  • Password::setDoubleConsonantsFirst()
    • 设置只在密码开头使用的双辅音字母列表。
  • Password::setDoubleVowelsAfterConsonant()
    • 设置在密码中只在辅音字母之后使用的双元音字母列表。
  • Password::setDoubleVowelsAnywhere()
    • 设置可以在密码中任何位置使用的双元音字母列表。
  • Password::setDoubleVowelsFirst()
    • 设置只在密码开头使用的双元音字母列表。
  • Password::setMaxLength()
    • 设置生成的密码的最大长度。
    • 默认为 12
    • 请注意,这并不是一个硬性限制,在某些情况下,密码可能长 1-2 个字符,具体取决于是否使用变形和特殊字符。
  • Password::setMinLength()
    • 设置生成的密码的最小长度。
    • 默认为 8
    • 请注意,这并不是一个硬性限制,在某些情况下,密码可能短 1-2 个字符,具体取决于是否使用变形和特殊字符。
  • Password::setNumSpecialChars()
    • 设置密码中的特殊字符数量。
    • 默认为 1。
    • 设置为 0 以禁用。
    • 如果使用变形,即使设置为 0,变形后的字符仍将变形。如果不为 0,则变形的特殊字符将计入此数量。
  • Password::setRareCharacters()
    • 设置仅有一定几率使用的罕见字符列表。
    • 默认为 l, q, w, x, z
  • Password::setRareCharactersChance()
    • 设置使用罕见字符的百分比几率。
    • 默认为 30。
    • 设置为 0 以防止罕见字符被使用。
    • 设置为 100 以禁用此功能。
  • Password::setSpecialChars()
    • 设置密码创建中使用的特殊字符列表。
    • 默认为 !@#$%&*-+?
  • Password::setVowels()
    • 设置密码创建中使用的元音字母列表。
    • 默认为英语字母表中所有元音字母。
  • Password::setWarpCharactersChance()
    • 设置按 getWarpCharactersMap() 定义的字符被替换的百分比几率。
    • 默认为 75。
    • 设置为 0 以禁用变形。
    • 设置为 100 以始终变形。
  • 密码::setWarpCharactersMap()
    • 设置需要被变形(替换)的字符映射。

许可协议

MIT