[ Index ] |
PHP Cross Reference of DokuWiki |
[Source view] [Print] [Project Stats]
(no description)
File Size: | 867 lines (30 kb) |
Included or required: | 0 times |
Referenced: | 0 times |
Includes or requires: | 0 files |
PassHash:: (32 methods):
verify_hash()
gen_salt()
init_salt()
hash_smd5()
hash_lsmd5()
hash_apr1()
hash_md5()
hash_sha1()
hash_ssha()
hash_crypt()
hash_mysql()
hash_my411()
hash_kmd5()
stretched_hash()
hash_pmd5()
hash_drupal_sha512()
hash_hmd5()
hash_djangosha1()
hash_djangomd5()
hash_seafilepbkdf2()
hash_djangopbkdf2()
hash_djangopbkdf2_sha256()
hash_djangopbkdf2_sha1()
hash_bcrypt()
hash_sha2()
hash_sha512()
hash_sha256()
hash_mediawiki()
hash_argon2i()
hash_argon2id()
hmac()
random()
verify_hash($clear, $hash) X-Ref |
Verifies a cleartext password against a crypted hash The method and salt used for the crypted hash is determined automatically, then the clear text password is crypted using the same method. If both hashs match true is is returned else false param: string $clear Clear-Text password param: string $hash Hash to compare against author: Andreas Gohr <andi@splitbrain.org> author: Schplurtz le Déboulonné <Schplurtz@laposte.net> return: bool |
gen_salt($len = 32) X-Ref |
Create a random salt param: int $len The length of the salt return: string |
init_salt(&$salt, $len = 32, $cut = true) X-Ref |
Initialize the passed variable with a salt if needed. If $salt is not null, the value is kept, but the lenght restriction is applied (unless, $cut is false). param: string|null &$salt The salt, pass null if you want one generated param: int $len The length of the salt param: bool $cut Apply length restriction to existing salt? |
hash_smd5($clear, $salt = null) X-Ref |
Password hashing method 'smd5' Uses salted MD5 hashs. Salt is 8 bytes long. The same mechanism is used by Apache's 'apr1' method. This will fallback to a implementation in pure PHP if MD5 support is not available in crypt() param: string $clear The clear text to hash param: string $salt The salt to use, null for random author: Andreas Gohr <andi@splitbrain.org> author: <mikey_nich at hotmail dot com> link: http://php.net/manual/en/function.crypt.php#73619 return: string Hashed password |
hash_lsmd5($clear, $salt = null) X-Ref |
Password hashing method 'lsmd5' Uses salted MD5 hashs. Salt is 8 bytes long. This is the format used by LDAP. param: string $clear The clear text to hash param: string $salt The salt to use, null for random return: string Hashed password |
hash_apr1($clear, $salt = null, $magic = 'apr1') X-Ref |
Password hashing method 'apr1' Uses salted MD5 hashs. Salt is 8 bytes long. This is basically the same as smd1 above, but as used by Apache. param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: string $magic The hash identifier (apr1 or 1) author: <mikey_nich at hotmail dot com> link: http://php.net/manual/en/function.crypt.php#73619 return: string Hashed password |
hash_md5($clear) X-Ref |
Password hashing method 'md5' Uses MD5 hashs. param: string $clear The clear text to hash return: string Hashed password |
hash_sha1($clear) X-Ref |
Password hashing method 'sha1' Uses SHA1 hashs. param: string $clear The clear text to hash return: string Hashed password |
hash_ssha($clear, $salt = null) X-Ref |
Password hashing method 'ssha' as used by LDAP Uses salted SHA1 hashs. Salt is 4 bytes long. param: string $clear The clear text to hash param: string $salt The salt to use, null for random return: string Hashed password |
hash_crypt($clear, $salt = null) X-Ref |
Password hashing method 'crypt' Uses salted crypt hashs. Salt is 2 bytes long. param: string $clear The clear text to hash param: string $salt The salt to use, null for random return: string Hashed password |
hash_mysql($clear) X-Ref |
Password hashing method 'mysql' This method was used by old MySQL systems param: string $clear The clear text to hash author: <soren at byu dot edu> link: http://php.net/mysql return: string Hashed password |
hash_my411($clear) X-Ref |
Password hashing method 'my411' Uses SHA1 hashs. This method is used by MySQL 4.11 and above param: string $clear The clear text to hash return: string Hashed password |
hash_kmd5($clear, $salt = null) X-Ref |
Password hashing method 'kmd5' Uses salted MD5 hashs. Salt is 2 bytes long, but stored at position 16, so you need to pass at least 18 bytes. You can pass the crypted hash as salt. param: string $clear The clear text to hash param: string $salt The salt to use, null for random return: string Hashed password |
stretched_hash($algo, $clear, $salt = null, $magic = 'P', $compute = 8) X-Ref |
Password stretched hashing wrapper. Initial hash is repeatedly rehashed with same password. Any salted hash algorithm supported by PHP hash() can be used. Salt is 1+8 bytes long, 1st byte is the iteration count when given. For null salts $compute is used. The actual iteration count is 2 to the power of the given count, maximum is 30 (-> 2^30 = 1_073_741_824). If a higher one is given, the function throws an exception. This iteration count is expected to grow with increasing power of new computers. param: string $algo The hash algorithm to be used param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: string $magic The hash identifier (P or H) param: int $compute The iteration count for new passwords author: Andreas Gohr <andi@splitbrain.org> author: Schplurtz le Déboulonné <Schplurtz@laposte.net> link: http://www.openwall.com/phpass/ return: string Hashed password |
hash_pmd5($clear, $salt = null, $magic = 'P', $compute = 8) X-Ref |
Password hashing method 'pmd5' Repeatedly uses salted MD5 hashs. See stretched_hash() for the details. param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: string $magic The hash identifier (P or H) param: int $compute The iteration count for new passwords author: Schplurtz le Déboulonné <Schplurtz@laposte.net> link: http://www.openwall.com/phpass/ return: string Hashed password see: PassHash::stretched_hash() for the implementation details. |
hash_drupal_sha512($clear, $salt = null, $magic = 'S', $compute = 15) X-Ref |
Password hashing method 'drupal_sha512' Implements Drupal salted sha512 hashs. Drupal truncates the hash at 55 characters. See stretched_hash() for the details; param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: string $magic The hash identifier (S) param: int $compute The iteration count for new passwords (defautl is drupal 7's) author: Schplurtz le Déboulonné <Schplurtz@laposte.net> link: https://api.drupal.org/api/drupal/includes%21password.inc/7.x return: string Hashed password see: PassHash::stretched_hash() for the implementation details. |
hash_hmd5($clear, $salt = null, $magic = 'H', $compute = 8) X-Ref |
Alias for hash_pmd5 param: string $clear param: null|string $salt param: string $magic param: int $compute return: string |
hash_djangosha1($clear, $salt = null) X-Ref |
Password hashing method 'djangosha1' Uses salted SHA1 hashs. Salt is 5 bytes long. This is used by the Django Python framework param: string $clear The clear text to hash param: string $salt The salt to use, null for random link: http://docs.djangoproject.com/en/dev/topics/auth/#passwords return: string Hashed password |
hash_djangomd5($clear, $salt = null) X-Ref |
Password hashing method 'djangomd5' Uses salted MD5 hashs. Salt is 5 bytes long. This is used by the Django Python framework param: string $clear The clear text to hash param: string $salt The salt to use, null for random link: http://docs.djangoproject.com/en/dev/topics/auth/#passwords return: string Hashed password |
hash_seafilepbkdf2($clear, $salt = null, $opts = []) X-Ref |
Password hashing method 'seafilepbkdf2' An algorithm and iteration count should be given in the opts array. Hash algorithm is the string that is in the password string in seafile database. It has to be converted to a php algo name. param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: array $opts ('algo' => hash algorithm, 'iter' => iterations) author: Schplurtz le Déboulonné <Schplurtz@laposte.net> return: string Hashed password see: https://stackoverflow.com/a/23670177 |
hash_djangopbkdf2($clear, $salt = null, $opts = []) X-Ref |
Password hashing method 'djangopbkdf2' An algorithm and iteration count should be given in the opts array. Defaults to sha256 and 24000 iterations param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: array $opts ('algo' => hash algorithm, 'iter' => iterations) return: string Hashed password |
hash_djangopbkdf2_sha256($clear, $salt = null, $opts = []) X-Ref |
Alias for djangopbkdf2 defaulting to sha256 as hash algorithm param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: array $opts ('iter' => iterations) return: string Hashed password |
hash_djangopbkdf2_sha1($clear, $salt = null, $opts = []) X-Ref |
Alias for djangopbkdf2 defaulting to sha1 as hash algorithm param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: array $opts ('iter' => iterations) return: string Hashed password |
hash_bcrypt($clear, $salt = null, $compute = 10) X-Ref |
Passwordhashing method 'bcrypt' Uses a modified blowfish algorithm called eksblowfish This method works on PHP 5.3+ only and will throw an exception if the needed crypt support isn't available A full hash should be given as salt (starting with $a2$) or this will break. When no salt is given, the iteration count can be set through the $compute variable. param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: int $compute The iteration count (between 4 and 31) return: string Hashed password |
hash_sha2($clear, $salt = null, $opts = []) X-Ref |
Password hashing method SHA-2 This is only supported on PHP 5.3.2 or higher and will throw an exception if the needed crypt support is not available Uses: - SHA-2 with 256-bit output for prefix $5$ - SHA-2 with 512-bit output for prefix $6$ (default) param: string $clear The clear text to hash param: string $salt The salt to use, null for random param: array $opts ('rounds' => rounds for sha256/sha512, 'prefix' => selected method from SHA-2 family) return: string Hashed password |
hash_sha512($clear, $salt = null, $opts = []) X-Ref |
No description |
hash_sha256($clear, $salt = null, $opts = []) X-Ref |
No description |
hash_mediawiki($clear, $salt = null) X-Ref |
Password hashing method 'mediawiki' Uses salted MD5, this is referred to as Method B in MediaWiki docs. Unsalted md5 method 'A' is not supported. param: string $clear The clear text to hash param: string $salt The salt to use, null for random link: http://www.mediawiki.org/wiki/Manual_talk:User_table#user_password_column return: string Hashed password |
hash_argon2i($clear) X-Ref |
Password hashing method 'argon2i' Uses php's own password_hash function to create argon2i password hash Default Cost and thread options are used for now. param: string $clear The clear text to hash link: https://www.php.net/manual/de/function.password-hash.php return: string Hashed password |
hash_argon2id($clear) X-Ref |
Password hashing method 'argon2id' Uses php's own password_hash function to create argon2id password hash Default Cost and thread options are used for now. param: string $clear The clear text to hash link: https://www.php.net/manual/de/function.password-hash.php return: string Hashed password |
hmac($algo, $data, $key, $raw_output = false) X-Ref |
Wraps around native hash_hmac() or reimplents it This is not directly used as password hashing method, and thus isn't callable via the verify_hash() method. It should be used to create signatures and might be used in other password hashing methods. param: string $algo Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", param: string $data Message to be hashed. param: string $key Shared secret key used for generating the HMAC variant of the message digest. param: bool $raw_output When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits. author: KC Cloyd link: http://php.net/manual/en/function.hash-hmac.php#93440 return: string see: hash_hmac() |
random($min, $max) X-Ref |
Use a secure random generator param: int $min param: int $max return: int |