SHA1,MD5简介
安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。对于长度小于2^64位的消息,SHA1会产生一个160位的消息摘要。当接收到消息的时候,这个消息摘要可以用来验证数据的完整性。MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。
前端加密实现
借助一个第三方的插件jshashes,地址https://github.com/h2non/jshashes。
代码如下:
var Hashes = require('jshashes')//sha1 插件
import url from '../../config/system.js';
class loginCtrl {
constructor(http, $state) {
[this.http, this.state, this.name] = [http, $state, 'login'];
this.param = {};
}
login() {
this.param.psw = new Hashes.SHA1().hex(this.param.psw);//将密码加密成sha1
this.http.post(this.param, url.login, function () {
console.log('登陆成功')
})
}
}
loginCtrl.$inject = ['http', '$state'];
export default loginCtrl;
后端nodejs代码
后端由两部分组成,一部分为处理post请求,接收数据的中间件。另一部分是链接mongoDB的。
中间件代码(app.js)