C#中将字符串转换成Md5值的方法
数据库中的密码为Md5加密格式,md5是不可以逆转换的,因此只能比较Md5值 //查询管理登录的语句,其中c3284d0f94606de1fd2af172aba15bf3为admin的【二次Md5值】(经过2次md5转换而得的字符串) select COUNT(*) from sys_admin where login_name='admin' and login_pwd='c3284d0f94606de1fd2af172aba15bf3' 1、引入库 using System.Security.Cryptography; //引用Md5转换功能 2、计算字符串的Md5值 public static string GetMD5WithString(String input) { MD5 md5Hash = MD5.Create(); // 将输入字符串转换为字节数组并计算哈希数据 byte[] data = md5Hash.ComputeHash(Encoding.UTF8.GetBytes(input)); // 创建一个 Stringbuilder 来收集字节并创建字符串 StringBuilder str = new StringBuilder(); // 循环遍历哈希数据的每一个字节并格式化为十六进制字符串 for (int i = 0; i < data.Length; i++) { str.Append(data[i].ToString("x2")); //加密结果"x2"结果为32位,"x3"结果为48位,"x4"结果为64位 } // 返回十六进制字符串 return str.ToString(); } 3、计算文件的Md5值 static public string GetMD5WithFilePath(string filePath) { FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] hash_byte = md5.ComputeHash(file); string str = System.BitConverter.ToString(hash_byte); str = str.Replace("-", ""); return str; } |
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
我的JAVA面试经验(3年左右工作经验)
前言- 致那些迷茫的JAVA面试者(特别是南京的1-4年经验),致那些奋发的年轻人,致自己。写这篇博文主要也是对我的成长道路的记录,面试受挫后的反思,及对自己的勉励。 本人介绍:3年多经验的程序员,坐标南京。 背景:因水平有限,及对部分面试问题记忆及理解有限,可能有些问题并不能表达准确。掌握技术有限,学习主动性一般(虽遇到问题善于思考钻研,但如果没有遇到问题比较放纵自己...被自由,轻松,安逸迷失心智),以及原公司项目背景因素,基本不需要太多新的技术框架支持,更没有涉及消息中间件,高并发分布式等等相关较主流技术,技术体系相对较老。综上导致我对很多新技术并不是太了解。 面试经验背景:基本公司都是按简历掌握技术来问(当然也有超纲不按套路出牌的),如果你简历掌握技术什么都不写,也有可能接到面试邀请,那么面试官问题可能就比较广了,对面试者不利。掌握技术我写了java基础:多线程,io/nio,jvm,集合底层,tcp/ip协议,socket,websocket。spring,springmvc,xml,设计模式,eclipse plugin开发,数据库,前端(基本没有什么人问,面的后端开发,...
- 下一篇
Golang工程经验(上)
作为一个C/C++的开发者而言,开启Golang语言开发之路是很容易的,从语法、语义上的理解到工程开发,都能够快速熟悉起来;相比C、C++,Golang语言更简洁,更容易写出高并发的服务后台系统 转战Golang一年有余,经历了两个线上项目的洗礼,总结出一些工程经验,一个是总结出一些实战经验,一个是用来发现自我不足之处 Golang语言简介 Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。 基于Golang的IM系统架构 我基于Golang的两个实际线上项目都是IM系统,本文基于现有线上系统做一些总结性、引导性的经验输出。 Golang TCP长连接 & 并发 既然是
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Red5直播服务器,属于Java语言的直播服务器