123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- using System;
- using System.Security.Cryptography;
- using System.Text;
- namespace SiwiFms.Helper
- {
- /// <summary>
- /// 非对称加密算法
- /// </summary>
- /// <example>
- /// Encrypt.Md5 Or EncryPt.Sha1
- /// </example>
- /// <remarks>加密后的字符无法进行解密</remarks>
- public class HashUtil
- {
- /// <summary>
- /// Md5加密算法
- /// </summary>
- /// <param name="input">待加密的字符串</param>
- /// <returns>32位密码字符</returns>
- public static string Md5(string input)
- {
- MD5 md5Hasher = MD5.Create();
- byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));
- var sb = new StringBuilder();
- for (int i = 0; i < data.Length; i++)
- {
- sb.Append(data[i].ToString("X2"));
- }
- return sb.ToString();
- }
- /// <summary>
- /// SHA1加密算法
- /// </summary>
- /// <param name="input">待加密的字符串</param>
- /// <returns>40位密码字符</returns>
- public static string Sha1(string input)
- {
- SHA1 sha1Hasher = SHA1.Create();
- byte[] data = sha1Hasher.ComputeHash(Encoding.Default.GetBytes(input));
- var sb = new StringBuilder();
- for (int i = 0; i < data.Length; i++)
- {
- sb.Append(data[i].ToString("X2"));
- }
- return sb.ToString();
- }
- /// <summary>
- /// SHA512加密算法
- /// </summary>
- /// <param name="input">待加密的字符串</param>
- /// <returns>128位加密字符</returns>
- public static string Sha512(string input)
- {
- SHA512 sha1Hasher = SHA512.Create();
- byte[] data = sha1Hasher.ComputeHash(Encoding.Default.GetBytes(input));
- var sb = new StringBuilder();
- for (int i = 0; i < data.Length; i++)
- {
- sb.Append(data[i].ToString("X2"));
- }
- return sb.ToString();
- }
- public static string GetFileMd5(string filePath)
- {
- throw new NotImplementedException();
- }
- }
- }
|