我使用FOSUserBundle和FOSRestBundle創建了Symfony2應用程序。我想使用rest api將其他應用程序連接到我的Symfony應用程序。 我需要在Javascript中編寫Symfony密碼編碼器函數。 其實在PHP中,它是這樣:Javascript中的Symfony2密碼編碼器功能
$salt = "secret";
$password = "azerty";
$salted = $password.'{'.$salt.'}';
$digest = hash('sha512', $salted, true);
for ($i = 1; $i < 5000; $i++) {
$digest = hash('sha512', $digest.$salted, true);
}
$digest = base64_encode($digest);
return $digest;
在Javascript中,我試圖用CryptoJS庫。我的代碼是:
var salt = 'secret',
password = 'azerty',
salted = password + '{' + salt + '}'
digest = CryptoJS.SHA512(salted);
for (var i=1; i<5000; i++) {
digest = CryptoJS.SHA512(digest+salted);
}
digest = digest.toString(CryptoJS.enc.Base64);
return digest;
但猜猜是什麼?它不起作用,我不知道爲什麼。 任何人都可以幫忙嗎? :)
Regards, Colzak。
「它不工作」是什麼意思? – Xatenev 2014-09-19 07:25:35
對不起,我應該說,返回的摘要是不一樣的。 PHP返回 ZBNCDQnUk31GBE5y10AG5MUbEzsN9kNGmiORRMTss + DiwtDtRaFJwjoMJQFp7mMTfgvrm8GrUx0q87hmYNYihw == 和JavaScript返回 q2lsiVES6m + Bxmzz87jk5z8epHE + jcd8tfIcIBWVx3KBuke + F9HuaahTHkhvqJDNASxw5mFEWgc2eng44Z8yKA == – Colzak 2014-09-19 07:36:26
@Colzak:什麼是你真正想實現什麼?這看起來真的很可怕。 – lxg 2014-09-19 10:00:36