C# 获取文件MD5与SHA1
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,第一个方法直接使用 FileInfo 类构造函数传入路径就可以了,因为是做控制台可以直接拖拽文件,这一点还是很方便的。需要注意的是路径中有空格会报错。该方法中 s 代表传入的文件路径 1 static
千家信息网最后更新 2025年01月20日C# 获取文件MD5与SHA1
第一个方法直接使用 FileInfo 类构造函数传入路径就可以了,因为是做控制台可以直接拖拽文件,这一点还是很方便的。
需要注意的是路径中有空格会报错。
该方法中 s 代表传入的文件路径
1 static void GetFile(string s) 2 { 3 try 4 { 5 FileInfo fi = new FileInfo(s); 6 Console.WriteLine("文件路径:{0}", s); 7 Console.WriteLine("文件名称:{0}", fi.Name.ToString()); 8 Console.WriteLine("文件类型:{0}", fi.Extension.ToString()); 9 Console.WriteLine("文件大小:{0} K", fi.Length / 1024);10 Console.WriteLine("文件创建时间:{0}", fi.CreationTime.ToString());11 Console.WriteLine("上次访问时间:{0}", fi.LastAccessTime.ToString());12 Console.WriteLine("上次写入时间:{0}", fi.LastWriteTime.ToString());13 }14 catch (Exception ex) 15 {16 Console.WriteLine(ex.Message);17 }18 }
第二个方法获得MD5值,该方法中 s 代表传入的文件路径
MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。
1 static void GetMD5(string s) 2 { 3 try 4 { 5 FileStream file = new FileStream(s,FileMode.Open); 6 MD5 md5 = new MD5CryptoServiceProvider(); 7 byte[] retval = md5.ComputeHash(file); 8 file.Close(); 9 10 StringBuilder sc = new StringBuilder();11 for (int i = 0 ; i第三个方法,获得SHA1值,该方法中 s 代表传入的文件路径
SHA1名为安全哈希算法,对于长度小于2^64位的消息,SHA1会产生一个160位的消息摘要。
SHA1有如下特性:不可以从消息摘要中复原信息;两个不同的消息不会产生同样的消息摘要,(但会有1x10 ^ 48分之一的机率出现相同的消息摘要,一般使用时忽略)。
1 static void GetSHA1(string s) 2 { 3 try 4 { 5 FileStream file = new FileStream(s, FileMode.Open); 6 SHA1 sha1 = new SHA1CryptoServiceProvider(); 7 byte[] retval = sha1.ComputeHash(file); 8 file.Close(); 9 10 StringBuilder sc = new StringBuilder();11 for (int i = 0; i < retval.Length; i++)12 {13 sc.Append(retval[i].ToString("x2"));14 }15 Console.WriteLine("文件SHA1:{0}", sc);16 }17 catch (Exception ex)18 {19 Console.WriteLine(ex.Message);20 }21 }
文件
方法
消息
路径
摘要
代表
信息
时间
算法
不同
相同
安全
三个
两个
函数
名称
大小
字符
字符串
控制台
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库逻辑范式
系统网络安全评估报
数据库查询重复数值语句
个人户缴税有数据库没
小鸟云香港服务器
用sql语句创建数据库的收获
广东触点互联网科技有限公司
服务器机房装摄像头
h1z1北美服务器
教师招聘之网络技术试卷
定制软件开发留后门
服务器盖房子我的世界
网络安全资产分配台帐
华为思科还有什么厂家的服务器
华为路由ax3 虚拟服务器设置
互联网科技与文创投资
绝地求生未来之翼炸服务器
汽车技术开发的软件开发
个人怎么做好网络安全的防护
中石化网络安全基线
常山软件开发项目管理
网络技术员需要什么
保存不了ip安全数据库
北京海量数据库怎么样
天津智慧餐厅系统软件开发定制
郑州仁峰软件开发有限公司李瑾
jdbc的数据库事务控制
关于防疫网络安全的手抄报
软件开发大专学校推荐
不可替代的即时通讯软件开发