IHasher
in
Class Hasher provides some basic hashing functions. Furthermore, it supports legacy hashes used by previous versions of ownCloud and helps migrating those hashes to newer ones.
The hashes generated by this class are prefixed (version|hash) with a version parameter to allow possible updates in the future. Possible versions: - 1 (Initial version)
Usage: // Hashing a message $hash = \OC::$server->get(\OCP\Security\IHasher::class)->hash('MessageToHash'); // Verifying a message - $newHash will contain the newly calculated hash $newHash = null; var_dump(\OC::$server->get(\OCP\Security\IHasher::class)->verify('a', '86f7e437faa5a7fce15d1ddcb9eaeaea377667b8', $newHash)); var_dump($newHash);
Tags
Table of Contents
Methods
- hash() : string
- Hashes a message using PHP's `password_hash` functionality.
- validate() : bool
- Check if the prefixed hash is valid
- verify() : bool
Methods
hash()
Hashes a message using PHP's `password_hash` functionality.
public
hash(string $message) : string
Please note that the size of the returned string is not guaranteed and can be up to 255 characters.
Parameters
- $message : string
-
Message to generate hash from
Tags
Return values
string —Hash of the message with appended version parameter
validate()
Check if the prefixed hash is valid
public
validate(string $prefixedHash) : bool
Parameters
- $prefixedHash : string
Tags
Return values
boolverify()
public
verify(string $message, string $hash[, null|string &$newHash = null ]) : bool
Parameters
- $message : string
-
Message to verify
- $hash : string
-
Assumed hash of the message
- $newHash : null|string = null
-
Reference will contain the updated hash if necessary. Update the existing hash with this one.
Tags
Return values
bool —Whether $hash is a valid hash of $message