博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#:Md5和Sha1两种加密方式
阅读量:7077 次
发布时间:2019-06-28

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

1.新建控制台应用程序

 

2.新建类 EncryptHelper.cs

1     public static class EncryptHelper 2     { 3         ///  4         /// 基于Md5的自定义加密字符串方法:输入一个字符串,返回一个由32个字符组成的十六进制的哈希散列(字符串)。 5         ///  6         /// 要加密的字符串 7         /// 
加密后的十六进制的哈希散列(字符串)
8 public static string Md5(this string str) 9 {10 //将输入字符串转换成字节数组11 var buffer = Encoding.Default.GetBytes(str);12 //接着,创建Md5对象进行散列计算13 var data = MD5.Create().ComputeHash(buffer);14 15 //创建一个新的Stringbuilder收集字节16 var sb = new StringBuilder();17 18 //遍历每个字节的散列数据 19 foreach (var t in data)20 {21 //格式每一个十六进制字符串22 sb.Append(t.ToString("X2"));23 }24 25 //返回十六进制字符串26 return sb.ToString();27 }28 29 /// 30 /// 基于Sha1的自定义加密字符串方法:输入一个字符串,返回一个由40个字符组成的十六进制的哈希散列(字符串)。31 /// 32 /// 要加密的字符串33 ///
加密后的十六进制的哈希散列(字符串)
34 public static string Sha1(this string str)35 {36 var buffer = Encoding.UTF8.GetBytes(str);37 var data = SHA1.Create().ComputeHash(buffer);38 39 var sb = new StringBuilder();40 foreach (var t in data)41 {42 sb.Append(t.ToString("X2"));43 }44 45 return sb.ToString();46 }47 }

 

3.修改 Program.cs 进行输出

1     class Program 2     { 3         static void Main(string[] args) 4         { 5             const string s = "123456"; 6             Console.WriteLine("密码:"+s); 7  8             Console.WriteLine("Md5:"+s.Md5()); 9             Console.WriteLine("长度:"+s.Md5().Length);10 11             Console.WriteLine("Sha1:" + s.Sha1());12             Console.WriteLine("长度:" + s.Sha1().Length);13 14             Console.Read();15         }16     }
View Code

 

4.效果图

转载地址:http://sadml.baihongyu.com/

你可能感兴趣的文章
用ISAPI Filter设置HttpOnly属性
查看>>
DNS域名服务器
查看>>
springmvc4环境简单搭建和定时任务
查看>>
mybatis-generator扩展教程系列 -- 自定义generatorConfig.xml参数
查看>>
基本的IPX配置
查看>>
稳扎稳打Silverlight(32) - 2.0Tip/Trick之MessageBox, Popup, 循环的几种实现方法, 动态变换主题...
查看>>
SQL Server存储过程输入参数使用表值
查看>>
SQL Injection [ Bypassing WAF (403 Forbidden) ]
查看>>
拇指接龙游戏从WIN32向Android移植过程问题记录(2)
查看>>
开源安全技术的四大好处
查看>>
LoadRunner在移动端性能测试的应用
查看>>
Hello JMX!
查看>>
轻松学习Linux之认识Shell
查看>>
Golang之interface
查看>>
SQL Server T-SQL高级查询
查看>>
Python自省(反射)指南[转]
查看>>
阿里巴巴公布了一份最新的AI成绩单
查看>>
Azure ARM (4) 开始创建ARM Resource Group并创建存储账户
查看>>
jQuery学习笔记开篇
查看>>
基于Xcode5的本地化
查看>>