博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
潜移默化学会WPF(安全篇<一>)--MD5加密三种方法加实践
阅读量:6652 次
发布时间:2019-06-25

本文共 2227 字,大约阅读时间需要 7 分钟。

一、MD5潜移默化公式

     

System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(   你要加密的string字符串 , "MD5");//密码加密

备注:MD5你可以换成SHA1  就是SHA1加密了,前提是你要引入  System.Web.dll  类库

MS SQL和MySQL的MD5加密 MS SQL: SELECT SUBSTRING(SYS.FN_VARBINTOHEXSTR(HASHBYTES('MD5','123456')),11,16) --换成32就是32位的 MY SQL:直接SELECT MD5('123456')

实践一下

public static string md5(string str,int code)   { if(code==16) //16位MD5加密(取32位加密的9~25字符)  { return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower().Substring(8,16) ;    }  else //32位加密  { return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower();    }    } 使用该函数加密,str是原始字符串,函数返回加密后的字符串 插入数据用ADO.NET

 

另一个我是自己写好了个类 ,自己引进去就可以用了(你可以自由发挥哦,中间你可以加任何你想加的东东)

 

MD5加密 源写法
using System; using System.Text; using System.Security; using System.Security.Cryptography; using System.IO; namespace CommonUtility.Cryptography {
/// /// MD5加密类,注意经MD5加密过的信息是不能转换回原始数据的 /// ,请不要在用户敏感的信息中使用此加密技术,比如用户的密码, /// 请尽量使用对称加密 /// public class MD5Encrypt {
private MD5 md5; /// /// 构造函数 /// public MD5Encrypt() {
md5 = new MD5CryptoServiceProvider(); } /// /// 从字符串中获取散列值 /// /// 要计算散列值的字符串 ///
public string GetMD5FromString(string str) {
byte[] toCompute = Encoding.Unicode.GetBytes(str); byte[] hashed = md5.ComputeHash(toCompute, 0, toCompute.Length); return Encoding.ASCII.GetString(hashed); } /// /// 根据文件来计算散列值 /// /// 要计算散列值的文件路径 ///
public string GetMD5FromFile(string filePath) {
bool isExist = File.Exists(filePath); if (isExist)//如果文件存在 {
FileStream stream = new FileStream(filePath, FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(stream, Encoding.Unicode); string str = reader.ReadToEnd(); byte[] toHash = Encoding.Unicode.GetBytes(str); byte[] hashed = md5.ComputeHash(toHash, 0, toHash.Length); stream.Close(); return Encoding.ASCII.GetString(hashed); } else//文件不存在 {
throw new FileNotFoundException("File not found!"); } } } }

先不写了,没评论没动力

转载于:https://www.cnblogs.com/AaronYang/archive/2012/04/07/2435976.html

你可能感兴趣的文章
关于left join连接查询 两张表里有同名字段的问题
查看>>
IOC----LightInject
查看>>
免费资料下载导航
查看>>
adb命令
查看>>
HDU 2680 Choose the best route(多起点单终点最短路问题)题解
查看>>
js经典试题之原型与继承
查看>>
iPod nano将何去何从?
查看>>
南阳42--一笔画问题
查看>>
win10 1803 频繁死机,卡死不动
查看>>
zabbix(x)
查看>>
【ccf- csp201509-4】高速公路
查看>>
Restful Api 的好与坏
查看>>
Python 特殊函数(filter, map, reduce等)
查看>>
[BZOJ4198][Noi2015]荷马史诗
查看>>
杭电 1155 Bungee Jumping(物理题)
查看>>
单链表倒置算法
查看>>
北京达人2011春装秀
查看>>
[转载] 信息系统项目管理师教程——06 信息化基础知识
查看>>
数据之路 Day9 Pandas包
查看>>
构建第一个Spring Boot2.0应用之Controller(三)
查看>>