浅谈如何通过node.js对数据进行MD5加密


Posted in Javascript onMay 16, 2018

md5介绍:MD5是一种常用的哈希算法,主要用于对一些重要数据进行“签名”,当然这些数据可以是任意的。最终得到的“签名”通常都是一个16或32位的十六进制的字符串。

实际工作开发中,是不会有人直接将密码明文直接放到数据库当中的。因为这种做法是非常不安全的,一般都要对其进行MD5加密!比如某用户的密码是“123456“(当然这样的密码也没有安全性可言),经过MD5处理后即为:

“e10adc3949ba59abbe56e057f20f883e”。这样做的好处主要有以下两点:

1、预防网站运营内部人员知道你的密码,而做一些不道德的行为。因为有很多人为了方便将所有的密码都设置成一样的。

2、预防外部的攻击,如果你注册的网站被黑客进行攻击,得到该网站的一些数据,拿到的也是一堆经MD5处理后的字符串。

注意:MD5一般是不能够被反编译的。前提是你的密码不要设置的过于简单。这也是现在为什么越来越多的网站,对用户设置的密码有了越来越高的要求,不仅仅是密码长度要够长,而且密码里还要包括数字,大小字母,以及特殊字符串。

本篇文章将主要针对于在NODE.JS中如何对数据进行MD5加密:

直接在NODE中引入md5依赖包:

下载安装md5依赖包

npm install md5

md5加密实例:

var md5 =require("md5");
//设置加密字符串
var passWord="if(1==1){console.log('i love you')}";
console.log(md5(passWord));//a775657889f1ad6e19178c3cd734392b

当然只是单纯的对数据进行MD5加密也并不安全,最好在数据上加上一点盐料:

var md5 =require("md5");
//设置加密字符串
var passWord="if(1==1){console.log('i love you')}";
//在原来的字符串的基础上加上一些特殊文本,例如“zhangpeiyue.com"
console.log(md5(passWord+"zhangpeiyue.com"));//13c22698f52329433107e75b49330484

nodejs中的MD5加密方式:

第一种:

var crypto=require('crypto'); 
var md5=crypto.createHash("md5"); 
md5.update("abcdef"); 
var str=md5.digest('hex'); 
var s=str.toUpperCase(); //32位大写 
console.log(s);

第二种: 

var md5=require("md5") 
var str=md5("abcdef") 
//str=e80b5017098950fc58aad83c8c14978e 默认32位小写

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JSON 学习之完全手册 图文
May 29 Javascript
基于jquery的DIV随滚动条滚动而滚动的代码
Jul 20 Javascript
js使用for循环与innerHTML获取选中tr下td值
Sep 26 Javascript
浅谈javascript 函数属性和方法
Jan 21 Javascript
用js编写的简单的计算器代码程序
Aug 04 Javascript
JavaScript基础之this详解
Jun 04 Javascript
Angular17之Angular自定义指令详解
Jan 21 Javascript
vue组件与复用详解
Apr 08 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
Aug 16 Javascript
vue项目使用axios发送请求让ajax请求头部携带cookie的方法
Sep 26 Javascript
JavaScript偏函数与柯里化实例详解
Mar 27 Javascript
Vue实现简易计算器
Feb 25 Javascript
如何用input标签和jquery实现多图片的上传和回显功能
May 16 #jQuery
vue keep-alive请求数据的方法示例
May 16 #Javascript
解决vue项目中type=”file“ change事件只执行一次的问题
May 16 #Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
May 15 #Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
May 15 #Javascript
vue中keep-alive的用法及问题描述
May 15 #Javascript
react中使用swiper的具体方法
May 15 #Javascript
You might like
超级简单的发送邮件程序
2006/10/09 PHP
php设计模式 Builder(建造者模式)
2011/06/26 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
帝国cms常用标签汇总
2015/07/06 PHP
js停止输出代码
2008/07/20 Javascript
一个关于jqGrid使用的小例子(行按钮)
2011/11/04 Javascript
js 实现菜单上下显示附效果图
2013/11/21 Javascript
详解AngularJS 模态对话框
2016/04/07 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
基于jQuery实现的幻灯图片切换
2016/12/02 Javascript
jQuery排序插件tableSorter使用方法
2017/02/10 Javascript
在node中如何使用 ES6
2017/04/22 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
iscroll动态加载数据完美解决方法
2017/07/18 Javascript
使用JavaScript中的lodash编写双色球效果
2018/06/24 Javascript
创建Vue项目以及引入Iview的方法示例
2018/12/03 Javascript
如何优雅的在一台vps(云主机)上面部署vue+mongodb+express项目
2019/01/20 Javascript
element-ui上传一张图片后隐藏上传按钮功能
2019/05/22 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
ES6之Proxy的get方法详解
2019/10/11 Javascript
vue项目初始化到登录login页面的示例
2019/10/31 Javascript
python实现的jpg格式图片修复代码
2015/04/21 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
Python迭代器和生成器定义与用法示例
2018/02/10 Python
[原创]Python入门教程5. 字典基本操作【定义、运算、常用函数】
2018/11/01 Python
瑞典Happy Socks美国官网:购买色彩斑斓的快乐袜子
2016/10/19 全球购物
怎么可以提高数据库查询数据的速度
2014/06/28 面试题
初婚初育证明
2014/01/14 职场文书
卫校中专生的自我评价
2014/01/15 职场文书
公司司机岗位职责范本
2014/03/03 职场文书
青年文明号服务承诺
2014/03/31 职场文书
学生旷课检讨书500字
2014/10/28 职场文书
实施意见格式范本
2015/06/05 职场文书
暑期社会实践新闻稿
2015/07/17 职场文书
css如何把元素固定在容器底部的四种方式
2022/06/16 HTML / CSS
pd.DataFrame中的几种索引变换的实现
2022/06/16 Python