• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > asp.net实现md5加密

asp.net实现md5加密

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了md5加密 asp.net,asp.net,asp net培训,asp和asp.net的区别,零基础学asp.net等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

MD5加密简单的说就是把一段明文 通过某种运算方式 求出密文。例如:明文为:abcdefg 通过一些列运算 得到 密文 7ac66c0f148de9519b8bd264312c4d64

它具有两个特性:1.无碰撞,2.不可逆。

无碰撞是指: 7ac66c0f148de9519b8bd264312c4d64 这段密文 只能由 abcdefg 这段明文得到,除此之外其他的 明文加密后 其值 绝对不会等于 7ac66c0f148de9519b8bd264312c4d64,也就是说 没有那两个明文 加密后 会得到相同的密文。

不可逆是指: 明文通过加密后得到密文,而无法通过密文 求出明文。也就是说 当我们知道明文 adcdefg 可以通过加密得到 7ac66c0f148de9519b8bd264312c4d64,但是我们如果知道 某段文字 加密后 得到7ac66c0f148de9519b8bd264312c4d64,却无法算出 7ac66c0f148de9519b8bd264312c4d64这段文字是由谁加密而来的。

那么有同学一定会问,具体应该运用在什么地方?

一般来说 我们在做网站登录系统的时候 密码都是密文保存的,一般用的都是MD5加密。

用户在填写用户名 密码 点击注册之后,我们验证通过,要把用户信息存入数据库的时候,就需要先把用户输入的密码,通过MD5加密的方式,把加密后的密文,存入密码的字段。

那么一定有同学会细心的发现,刚刚还提到过 MD5加密是不可逆的,那么用户登录的时候如何判断用户输入的密码是否正确的呢?

例如 用户设置的密码 为 abcdefg,而存储的时候 我们存储的是 abcdefg加密过之后得到的值 7ac66c0f148de9519b8bd264312c4d64,那么用户再次登录时 会输入密码abcdefg,我们如何比较两者是否相等?

我们无法通过 加密后的值换算出 加密前的值,因此 我们通常的做法是,把用户再次登录时 输入的密码 再次加密 和数据库中 存放的值进行比对,如果相等 则说明输入的密码正确。

OK,基本原理和运用场景基本说的差不多了,最后再来说说 在ASP.NET中如何进行MD5加密。

在ASP.NET中MD5的加密方式很简单,代码如下:

需要注意的是,如果MD5加密的时候转换的是小写,那么在验证的时候也要转换成小写,保持统一。另外上述方式为32位的MD5加密方式,如果是16位的 则取32位加密结果的中间16位的值即可。

这里还有示例,大家参考一下

     //获取密文字节数组
     byte[] bytResult = md5.ComputeHash(System.Text.Encoding.GetEncoding(sEncode).GetBytes(strSource));

     //转换成字符串,并取9到25位
     //string strResult = BitConverter.ToString(bytResult, 4, 8); 
     //转换成字符串,32位

     string strResult = BitConverter.ToString(bytResult);

     //BitConverter转换出来的字符串会在每个字符中间产生一个分隔符,需要去除掉
     strResult = strResult.Replace("-", "");

     return strResult.ToLower();
 }
</div>

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • asp.net的加密解密技巧
  • ASP.NET加密解密算法分享
  • asp.net实现md5加密
  • asp.net中使用cookie与md5加密实现记住密码功能的实现代码
  • asp.net下加密Config的方法
  • ASP.NET中MD5与SHA1加密的几种方法
  • asp.net下XML的加密和解密实现方法
  • asp.net EncryptHelper 加密帮助类
  • asp.net Md5的用法小结
  • 彻底解决ASP.NET MD5加密中文结果和ASP不一致的问题

相关文章

  • 2017-05-11asp.net实现递归方法取出菜单并显示在DropDownList中(分栏形式)
  • 2017-05-11HttpWebRequest和HttpWebResponse用法小结
  • 2017-05-11asp.net DataList与Repeater用法区别
  • 2017-05-11巧用ASP.NET预编译Web应用程序规避调用延迟的方法
  • 2017-05-11asp.net 程序性能优化的七个方面 (c#(或vb.net)程序改进)
  • 2017-05-11解读ASP.NET 5 & MVC6系列教程(8):Session与Caching
  • 2017-05-11ASP.NET中HTML页面的访问验证设置方法
  • 2017-05-11Redis缓存详解
  • 2017-05-11ASP.NET中如何实现回调
  • 2017-05-11asp.net 图片的读写入库实现代码

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Asp.Net服务器发送HTTP标头后无法设置内容类型的问题解决
    • Asp.NET 随机码生成基类(随机字母,随机数字,随机字母+数字)
    • gridview调整单元格宽度的方法
    • DataTable类Clone方法与Copy方法的区别分析
    • Ext.Net学习笔记之button小结
    • asp.net 弹出对话框返回多个值
    • C#默认以管理员身份运行程序实现代码
    • repeater分页 内容显示
    • asp.net中获取远程网页的内容之一(downmoon原创)
    • 在ASP.NET 2.0中操作数据之十七:研究插入、更新和删除的关联事件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有