/** * Test that hash() works with blowfish. * * @return void */ public function testHashBlowfish() { Security::setCost(10); $test = Security::hash('password', 'blowfish'); $_hashType = Security::$hashType; $key = 'someKey'; $hashType = 'blowfish'; Security::setHash($hashType); $this->assertSame($hashType, Security::$hashType); $this->assertSame(60, strlen(Security::hash($key, null, false))); $password = $submittedPassword = $key; $storedPassword = Security::hash($password); $hashedPassword = Security::hash($submittedPassword, null, $storedPassword); $this->assertSame($storedPassword, $hashedPassword); $submittedPassword = '******'; $hashedPassword = Security::hash($submittedPassword, null, $storedPassword); $this->assertNotSame($storedPassword, $hashedPassword); $expected = sha1('customsaltsomevalue'); $result = Security::hash('somevalue', 'sha1', 'customsalt'); $this->assertSame($expected, $result); $oldSalt = Configure::read('Security.salt'); Configure::write('Security.salt', 'customsalt'); $expected = sha1('customsaltsomevalue'); $result = Security::hash('somevalue', 'sha1', true); $this->assertSame($expected, $result); Configure::write('Security.salt', $oldSalt); Security::setHash($_hashType); }