/** * (non-PHPdoc) * * @see \Symfony\Component\Security\Core\Encoder\PasswordEncoderInterface::encodePassword() */ public static function encodePassword(Password $password) { $rounds = 60000; // incresed rounds for harder bruteforce $salt = ""; if ($password->getId() != null && $password->getId() != "") { $salt = self::getRandomeSalt(16 - strlen($password->getId())); $salt = $password->getId() . ($password->isMasterPassword() ? '+' : '=') . $salt; } else { $salt = 'default=' . self::getRandomeSalt(); } $hash = crypt($password->getPasswordPlain(), '$6$rounds=' . $rounds . '$' . $salt . '$'); $password->setHash('{crypt}' . $hash); $password->setPasswordPlain(null); $password->setEncoder(CryptEncoder::class); }