var secure;
var authentic;
secure = prompt("Enter password","");
alert(secure);
var c1 = CryptoJS.SHA256(secure);
alert(c1);
authentic = prompt("Enter password","");
alert(authentic);
var c2=CryptoJS.SHA256(authentic);
alert(c2);
if(c1==c2)
{
alert("hi");
}
else
{
alert("bye");
}
Я использую сценарий «http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/sha256.js»Что не так в коде SHA-256 Javascript?
ОБЪЯСНЕНИЕ: Что я пытаюсь сделать, это сравнить хэшируются passwords.If оба вошли пароли (безопасный и достоверный), которые были хэшируются (c1 и с2 соответственно) равны, Он должен отображать «привет» мне. Но я нахожу, что он всегда «до свидания» ко мне.
ПРОБЛЕМА: Когда я сравниваю c1 и c2, результат, который я всегда получаю, является «bye», хотя значения c1 и c2 одинаковы, когда я показываю их с помощью окна предупреждения.
Я новичок в хэшировании. Помощь будет очень оценена!
Вы делаете плохое сравнение, вам нужно «постоянная времени» сравнивает строку для предотвращения атак синхронизации –
@RichieFrame Затрудняюсь сказать, так как все это не имеет никакого смысла. Unsalted SHA-2, сравнение с клиентом, я даже не знаю, с чего начать ... – CodesInChaos
Используйте правильный отступ. – CodesInChaos