Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Verifica se a string equivale ao hash
- *
- * @author Yallison Gabriel
- */
- class BcryptHasher {
- /**
- * Default crypt cost factor.
- *
- * @var int
- */
- protected $rounds = 10;
- /**
- * Hash the given value.
- *
- * @param string $value
- * @param array $options
- * @return string
- *
- * @throws \RuntimeException
- */
- public function make($value, array $options = [])
- {
- $cost = isset($options['rounds']) ? $options['rounds'] : $this->rounds;
- $hash = password_hash($value, PASSWORD_BCRYPT, ['cost' => $cost]);
- if ($hash === false) {
- throw new RuntimeException('Bcrypt hashing not supported.');
- }
- return $hash;
- }
- /**
- * Check the given plain value against a hash.
- *
- * @param string $value
- * @param string $hashedValue
- * @param array $options
- * @return bool
- */
- public function check($value, $hashedValue, array $options = [])
- {
- if (strlen($hashedValue) === 0) {
- return false;
- }
- return password_verify($value, $hashedValue);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement