Exemplo n.º 1
0
        /// <summary>
        /// 指定加密算法,加密指定的文本。
        /// </summary>
        /// <param name="alog">加密算法。</param>
        /// <param name="text">需加密的字符串。</param>
        /// <param name="encoding">编码方式。</param>
        /// <returns>加密后的字符串。</returns>
        public static string Crypto(SecurityAlgorithms alog, string text, Encoding encoding = null)
        {
            HashAlgorithm algorithm;

            switch (alog)
            {
            case SecurityAlgorithms.SHA1:
                algorithm = CreateSHA1();
                break;

            case SecurityAlgorithms.SHA256:
                algorithm = CreateSHA256();
                break;

            case SecurityAlgorithms.SHA384:
                algorithm = CreateSHA384();
                break;

            case SecurityAlgorithms.SHA512:
                algorithm = CreateSHA512();
                break;

            case SecurityAlgorithms.MD5:
                algorithm = CreateMD5();
                break;

            default: throw new NotSupportedException();
            }
            using (algorithm)
            {
                return(algorithm.ComputeHash((encoding ?? Encoding.UTF8).GetBytes(text)).ToHexString());
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// 指定加密算法,加密指定的文本。
 /// </summary>
 /// <param name="alog">加密算法。</param>
 /// <param name="text">需加密的字符串。</param>
 /// <param name="encoding">编码方式。</param>
 /// <returns>加密后的字符串。</returns>
 public static string Crypto(SecurityAlgorithms alog, string text, Encoding encoding = null)
 {
     HashAlgorithm algorithm;
     switch(alog)
     {
         case SecurityAlgorithms.SHA1:
             algorithm = CreateSHA1();
             break;
         case SecurityAlgorithms.SHA256:
             algorithm = CreateSHA256();
             break;
         case SecurityAlgorithms.SHA384:
             algorithm = CreateSHA384();
             break;
         case SecurityAlgorithms.SHA512:
             algorithm = CreateSHA512();
             break;
         case SecurityAlgorithms.MD5:
             algorithm = CreateMD5();
             break;
         default: throw new NotSupportedException();
     }
     using(algorithm)
     {
         return algorithm.ComputeHash((encoding ?? Encoding.UTF8).GetBytes(text)).ToHexString();
     }
 }