Пример #1
0
        private static byte[] GetHash(SHA_Type shaType, byte[] bytes)
        {
            byte[] hash = null;
            switch (shaType)
            {
            case SHA_Type.SHA1:
                SHA1 sha1 = SHA1Managed.Create();
                hash = sha1.ComputeHash(bytes);
                break;

            case SHA_Type.SHA256:
                SHA256 sha256 = SHA256Managed.Create();
                hash = sha256.ComputeHash(bytes);
                break;

            case SHA_Type.SHA512:
                SHA512 sha512 = SHA512Managed.Create();
                hash = sha512.ComputeHash(bytes);
                break;

            default:
                throw new NotSupportedException();
            }

            return(hash);
        }
Пример #2
0
        private static string GetHashSHA(string text, SHA_Type _type)
        {
            byte[] bytes      = Encoding.UTF8.GetBytes(text);
            string hashString = string.Empty;

            byte[] hash = null;
            if (_type == SHA_Type.SHA_512)
            {
                SHA512Managed hashstring_512 = new SHA512Managed();
                hash = hashstring_512.ComputeHash(bytes);
            }
            else
            {
                SHA256Managed hashstring_256 = new SHA256Managed();
                hash = hashstring_256.ComputeHash(bytes);
            }
            foreach (byte x in hash)
            {
                hashString += String.Format("{0:x2}", x);
            }
            return(hashString);
        }
Пример #3
0
 public static string ToSHA(this string inputString, SHA_Type shaType)
 {
     byte[] bytes = Encoding.UTF8.GetBytes(inputString);
     byte[] hash  = GetHash(shaType, bytes);
     return(GetStringFromHash(hash));
 }