처음 프로그래밍을 배우기 시작했을 때 저는 항상 작은 소프트웨어 장치를 직접 작성하는 것에 대해 생각했습니다.
이것은 SHA1이 추가된 클래식 파일 MD5 검사입니다.
인터넷에서 무언가를 다운로드할 때 작성자는 MD5 값을 제공합니다.
그 기능은 소프트웨어를 다운로드한 후 다운로드한 파일에 대해 MD5 검사를 수행하여 얻은 파일이 사이트에서 제공한 파일과 동일한지 확인할 수 있다는 것입니다.
그래서 MD5 검증툴이 필요하니 바이두에 가서 찾으면 되는데, 국내 다운로드 사이트는 말할 것도 없고... 번들로 되어있는 것들은 경계하기 어렵습니다.
그래서 프로그래머로서 직접 작성해 보세요.
이 가젯을 분석하기 위한 주요 요구 사항은
1. 경로에 따라 파일을 찾습니다.
2. MD5 가져오기
3. 🎜>
아주 간단한 작은 도구 첫 번째 방법은 FileInfo 클래스 생성자를 직접 사용하여 경로를 전달하는 방법입니다. 콘솔에 직접 파일을 끌어다 놓을 수 있기 때문에 매우 편리합니다. . 경로에 공백이 있으면 오류가 발생하므로 주의하세요. 이 방법에서 s는 들어오는 파일 경로를 나타냅니다static void GetFile(string s) { try { FileInfo fi = new FileInfo(s); Console.WriteLine("文件路径:{0}", s); Console.WriteLine("文件名称:{0}", fi.Name.ToString()); Console.WriteLine("文件类型:{0}", fi.Extension.ToString()); Console.WriteLine("文件大小:{0} K", fi.Length / 1024); Console.WriteLine("文件创建时间:{0}", fi.CreationTime.ToString()); Console.WriteLine("上次访问时间:{0}", fi.LastAccessTime.ToString()); Console.WriteLine("上次写入时间:{0}", fi.LastWriteTime.ToString()); } catch (Exception ex) { Console.WriteLine(ex.Message); } }두 번째 방법은 MD5 값을 얻습니다. 이 방법에서 s는 들어오는 파일 경로를 나타냅니다MD5는 전체 파일은 큰 텍스트 메시지로 처리되며 되돌릴 수 없는 문자열 변환 알고리즘을 통해 이 고유한 MD5 메시지 다이제스트가 생성됩니다.
static void GetMD5(string s) { try { FileStream file = new FileStream(s,FileMode.Open); MD5 md5 = new MD5CryptoServiceProvider(); byte[] retval = md5.ComputeHash(file); file.Close(); StringBuilder sc = new StringBuilder(); for (int i = 0 ; i<retval.Length ; i++ ) { sc.Append(retval[i].ToString("x2")); } Console.WriteLine("文件MD5:{0}",sc); } catch(Exception ex) { Console.WriteLine(ex.Message); } }세 번째 방법은 SHA1 값을 얻는 것입니다. 이 방법에서 s는 수신 파일 경로를 나타냅니다.SHA1은 길이가 2^ 미만인 메시지의 경우 보안 해시 알고리즘이라고 합니다. 64비트, SHA1은 160비트 메시지 다이제스트를 생성합니다. SHA1에는 다음과 같은 특징이 있습니다. 메시지 다이제스트에서 정보를 복구할 수 없습니다. 두 개의 서로 다른 메시지는 동일한 메시지 다이제스트를 생성하지 않지만 동일한 메시지 다이제스트가 나타날 확률은 1x10^48입니다. 일반적인 사용에서는).
아아아아
위 내용은 C#이 MD5 및 SHA1 파일을 얻는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!