public function needsRehash($oldHash) { $ident = $this->getIdentifier(); if (Utils::binaryStrlen($ident) > Utils::binaryStrlen($oldHash)) { return true; } $oldIdent = Utils::binarySubstr($oldHash, 0, Utils::binaryStrlen($ident)); return $ident !== $oldIdent; }
public function verifyHMAC($data) { $data = base64_decode($data); if (Utils::binaryStrlen($data) <= 32) { return false; } $hash = Utils::binarySubstr($data, -32, 32); $data = Utils::binarySubstr($data, 0, -32); $newhash = hash_hmac('sha256', $data, $this->getHMACSecret(), true); return Utils::compareStr($hash, $newhash) ? $data : false; }