Вы должны хешировать нужные значения при отправке формы.
Я думаю, что-то вроде этого должно работать:
HTML
<form onsubmit="return myOnSubmit(this);">
JavaScript
function myOnSubmit(aForm) {
//Getting the two input objects
var inputUsername = aForm['username'];
var inputPassword = aForm['password'];
//Hashing the values before submitting
inputUsername.value = sha256_hash(inputUsername.value);
inputPassword.value = sha256_hash(inputPassword.value);
//Submitting
return true;
}
РЕДАКТИРОВАТЬ: из-за части «Хэширование значений перед отправкой», это не будет работать, если у вас есть свойство maxlength
, потому что хешированные значения намного длиннее, чем просто пароль.
Если вы ДОЛЖНЫ использовать максимальную длину, вам потребуется реализовать скрытые поля и изменить эти значения, а также убедиться, что поля, содержащие чистые данные, не отправляются (за пределами тега <FORM>
).