Symfony2:如何生成密码的sha512哈希值?

Vis*_*mar 2 php hash sha512 symfony fosuserbundle

我需要比较用户输入的密码是否有效.我如何获得sha512加密.我也在我的项目中使用FOSUserBundle.

Mun*_*Das 10

你可以在你的控制器中做(假设你将sha512设置为编码算法app/config/security.yml)

    $userName = 'username';
    $password = "pass";
    $userManager = $this->get('fos_user.user_manager');
    $user = $userManager->loadUserByUsername($userName);
    $encoder = $this->get('security.encoder_factory')->getEncoder($user);
    $encodedPass = $encoder->encodePassword($password, $user->getSalt());
    echo $user->getPassword() === $encodedPass;
Run Code Online (Sandbox Code Playgroud)