MD5三种方法的学习总结
MD5百度百科
MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4
简介
入行没多久,听见别人吹牛MD5加密不可以破解。作为当时菜鸟的我乍一听,这个这么叼的?现在入行一年多了,发现原来MD5就是一行代码的事情,如果不够再加一行呗。
.NET早期MD5加密
早期的MD5加密的方法,真的只有一段代码。不信请看如下代码:

System.Web.Security下面的静态类FormAuthentication下中的HashPasswordForStoringInConfigFile方法加密可以对字符串进行想要的算法加密,如果要用的话,直接一段代码即可。但是作为有强迫证的程序猿还是写个方法比较。但是,注意到方法上面的Obsolete类的注释,发现该方法已经过时,过时并不是不能使用而已,如果想简单点的话,这一段代码还是能使用的。
.NET现在的加密方法
早期的MD5加密方法,已经过时。随着需求越来越大,安全性越来越高,微软推出了MD5类。

推出的MD5类中,改MD5CryptoServiceProvider继承MD5类。该方法主要是通过将字符串转换成操作系统当前的当前 ANSI 代码页的编码的字节序列比特数组。在通过MD5CryptoServiceProvider中的ComputeHash方法计算比特数组的哈希值,最后加计算过后的数组进行字符串重组,也就组成当前的MD5字符串
总结下,第一种方法比较简单实用,但是过时了,缺乏安全性;第二种方法安全性较高,还以进字符串的进行二次甚至多次加密,拓展性更强(毕竟推出的新方法)。不是说好的三种方法的吗?怎么就总结了?其实想想C#语言进行加密运算的时候,作为开发人员当数据库一堆加密后的字符串怎么办?所以数据库当然也可以进行MD5加密了,为了更好的方便管理程序。之前在公司看到数据库自定义函数可以直接用MD5改变登录密码,修改该函数,发现/* Definition is encrypted. */该函数被加密。之后自己摸索了半个小时,才将百度到的MD5函数进行加密。如下图所示。

中间注释掉的为加密或绑定,这样就可以自己写个函数而不给别人使用了O(∩_∩)O哈哈~。
SQLMD5加密
通过上面的数据库的加密,自己定义了个方法,主要是通过数据库函数返回的值 
以上就是MD5学习的三种方法,记录下自己的心得。。。。。。。
MD5三种方法的学习总结的更多相关文章
- mac学习Python第一天:安装、软件说明、运行python的三种方法
一.Python安装 从Python官网下载Python 3.x的安装程序,下载后双击运行并安装即可: Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的. MAC 系统一般 ...
- 清空StringBuilder的三种方法及效率
清空StringBuilder的三种方法及效率 大家知道对于字符串频繁拼接是使用stringbuilder.Append方法比使用string+=方法效率高很多,但有时需要清空stringbuilde ...
- mysql分表的三种方法
先说一下为什么要分表当一张的数据达到几百万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了.分表的目的就在于此,减小数据库的负担,缩短查询时间.根据个人经验,mysql执行一 ...
- 【Cocos2d-x游戏开发】解决Cocos2d-x中文乱码的三种方法
众所周知,Cocos2d-x是一款不错的开源引擎,但是在Cocos2d-x中直接使用中文是无法正确显示的.比如下面的情况: 解决这个问题常用的有三种方法:1.通过转换为UTF-8编码来显示.2.使用i ...
- ASP.NET MVC 中将数据从View传递到控制器中的三种方法(表单数据绑定)
http://www.cnblogs.com/zyqgold/archive/2010/11/22/1884779.html 在ASP.NET MVC框架中,将视图中的数据传递到控制器中,主要通过发送 ...
- asp.net跳转页面的三种方法比较
目前,对于学习asp.net的很多朋友来讲,实现跳转页面的方法还不是很了解.本文将为朋友们介绍利用asp.net跳转页面的三种方法,并对其之间的形式进行比较,希望能够对朋友们有所帮助. ASP.NET ...
- 设置css三种方法的优先级
有的小伙伴问了,如果有一种情况:对于同一个元素我们同时用了三种方法设置css样式,那么哪种方法真正有效呢?在下面代码中就出现了这种情况 1.使用内联式CSS设置“超酷的互联网”文字为粉色. 2.然后使 ...
- C#发送邮件三种方法(Localhost,SMTP,SSL-SMTP)
原文:C#发送邮件三种方法(Localhost,SMTP,SSL-SMTP) 最近公司由于一个R&I项目的需要,用户要求在购买产品或出货等一些环节,需要发送邮件提醒或者说每周一让系统自动采集数 ...
- CSS实现导航条Tab的三种方法
前面的话 导航条Tab在页面中非常常见,本文说详细介绍CSS实现导航条Tab的三种方法 布局 根据上图所示,先规定几个定义,上图的模块整体叫做导航,由导航标题和导航内容组成.要实现上图所示的布 ...
随机推荐
- 多开 MFC线程
序言:我才编程几年啊!就要处理多线程.对于只写函数的我,这难度简直了!不过MFC的多线程,貌似比较简单,还能处理的了. (1).开MFC多个线程 在视频采集的过程中,如果不使用媒体计数器,会造成主线程 ...
- 教材配套PPT初稿
1-10章初稿,基本完整.有些粗糙,后面可能会稍作调整. 附更新情况如下: 1.增加了第10章内容: 2.第5章增加了一些内容: 3.第3章内容部分更新: 4.增加了第8-9章内容. 订正:更新了第8 ...
- Visual Studio 2015 开发 Linux 和树莓派 程序的 C++环境
可以创建 树莓派 和 linux控制台应用. 创建后的 readme , 有各个设置的说明 你需要输入你虚拟主机, 编译环境linux虚拟机 的简单配置,另外, 4月5日的版本 如果 你的linux ...
- servlet 中文编码设置
Tomcat服务器默认采用的ISO8859-1编码 产生的原因: 不同数据来源的编(解)码格式不同: 数据来源 默认编码格式 浏览器页面 GBK(可在浏览器页面右键切换) request(get) I ...
- PAT_A1134#Vertex Cover
Source: PAT A1134 Vertex Cover (25 分) Description: A vertex cover of a graph is a set of vertices su ...
- 切割窗口url
var keyWords=location.href.split("?")[1].split("&"); console.log(keyWords) f ...
- (C/C++学习)2.C语言中文件流操作基本函数总结
函数所在头文件:stdio.h 说明:前半部分主要为对各个文件流操作函数的例举,后半部分着重于上机运行分析.文中部分引用自王桂林老师的C/C++课件. 1.FIELE *fopen(const cha ...
- CSS 利用transform达到居中效果
<body> <div class="center"> .... </div> </body> 让left和top都是50%,这在水 ...
- (ccf模拟)201709-2公共钥匙盒
#include <iostream> #include<string> #include <algorithm> #include<sstream> ...
- 洛谷 P1602 Sramoc问题
题目描述 话说员工们整理好了筷子之后,就准备将快餐送出了,但是一看订单,都傻眼了:订单上没有留电话号码,只写了一个sramoc(k,m)函数,这什么东西?什么意思?于是餐厅找来了资深顾问团的成员,YQ ...