前端md5加密

信息,经过处理,输出32位的信息

  • 不同的输入得到的不同的结果(唯一性)

  • 根据32位的输入结果不可能反推出输入的信息(不可逆)

  • MD5用途:

    1. 防止被篡改,发布文件时同时发布文件的MD5值,在对方收到文件后再次进行MD5计算,最终获得的结果一样,说明未被篡改。

    2. 防止直接看到明文,这也是它最常见的用途,经常在某些页面点击提交后,密码就通过md5加密,直接由几位密码突然填满了密码框

    3. 作为数字签名。

    MD5算法过程:

    MD5算法详解

    MD5安全性:

    MD5是不可能逆向的

    目前网上存在一些破解方法,主要是通过穷举法。

    将原文和加密后的MD5一一对应存入字典中,将已知的MD5反查表推算出原文,以空间换时间。

    一个采用穷举法破解MD5加密的网站

    前端如何使用MD5算法:

    原理:

    用户提交表单时,拦截表单,将密码进行MD5加密,加密后再进行提交。

    MD5算法的cdn:<script src="https://cdn.bootcdn.net/ajax/libs/blueimp-md5/2.18.0/js/md5.min.js"></script>

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>Document</title>     <script src="https://cdn.bootcdn.net/ajax/libs/blueimp-md5/2.18.0/js/md5.min.js"></script> </head> <body>     <form action="#" method="post" onsubmit="return check()">         <p>             <span>用户名:</span><input type="text" value="user" name="userName" id="userName">         </p>         <p>             <span>密码:</span><input type="password" name="userPassword" id="userPassword">         </p>         <button type="submit">提交</button>     </form>     <script>         // 通过check()拦截表单提交,经过MD5加密后在进行提交         var check = function(){             var name = document.getElementById("userName");             var password = document.getElementById("userPassword");             console.log(password.value)             password.value = md5(password.value);             console.log(password.value)             return true;         }     </script> </body> </html> 

    版权声明:玥玥 发表于 2021-04-19 23:54:18。
    转载请注明:前端md5加密 | 女黑客导航