我正在使用一个带有user
和password
字段的表单,因为在将表单发送到服务器进行验证之前,我需要加密密码。为此,我使用md5.js
在客户端使用盐信息进行加密。使用md5.js和PHP解密的客户端密码加密
test.php
<script LANGUAGE="Javascript" SRC="js/md5.js"></script>
<script>
function encryptPwd1(strPwd, strSalt, strit) {
var strNewSalt = new String(strSalt);
if (strPwd == "" || strSalt == "")
{
return null;
}
var strEncPwd;
var strPwdHash = MD5(strPwd);
var strMerged = strNewSalt + strPwdHash;
var strMerged1 = MD5(strMerged);
return strMerged1;
}
function validateForm(strSalt, strit) {
var strEncPwd = new String(encryptPwd1(document.getElementById("password").value, strSalt, strit));
document.getElementById("password").value = strEncPwd;
document.login.submit();
return true;
}
</script>
<form method="post" action="test1.php">
<input type="hidden"
name="salt"
id="salt"
value="8qadr4xnCPW275BaNpYX">
<label class="login">Password:</label>
<input
name="password"
id="password"
type="password" />
<input type="submit"
name="gos"
id="gos"
value="Login"
onClick="return validateForm('8qadr4xnCPW275BaNpYX','38');">
</form>
这是包含使用JavaScript和md5.js
客户端加密的形式。我可以成功加密邮件并将其发送到test1.php
那test1.php
。我不知道如何解密文本请帮助我。
你在这里谈论的是哈希,而不是加密。散列并不意味着是可逆的(即使MD5非常不安全并且可以将其颠倒)。你应该在服务器端重新哈哈哈哈和JS哈希比较,而不是试图扭转它。 –
为什么不简单地使用md5来解密它,而是尝试将其反转或创建md5解密 – user2530266
@orciny可以任何人指导我如何做到这一点。或任何示例 – VPR