How do I generate an encryption hash in ASP.NET MVC?

后端 未结 4 1052
一个人的身影
一个人的身影 2021-01-05 16:12

I am looking into creating a custom members login system (for learning) and I haven\'t been able to figure out the C# command to generate an encrypted hash.

Is ther

相关标签:
4条回答
  • 2021-01-05 16:27

    Well, first of all an encryption hash is a contradiction. Like a vegetarian steak. You can use encryption, or you can hash them (and you should hash them), but hashing is not encryption.

    Look up a class starting with Md5 ;) Or Sha1 - those are hash algoryithms. It is all there in .NET (System.Security.Cryptography namespace).

    0 讨论(0)
  • 2021-01-05 16:32

    I prefer having my hash all in one concatenated string. I borrowed this to build my hash:

    public static string MD5Hash(string itemToHash)
    {
        return string.Join("", MD5.Create().ComputeHash(Encoding.ASCII.GetBytes(itemToHash)).Select(s => s.ToString("x2")));
    }
    
    0 讨论(0)
  • 2021-01-05 16:34

    For my part, I purpose this function i use to get the gravatar picture profil:

    you can use it like you want

    public string getGravatarPicture()
        {
            MD5 md5 = new MD5CryptoServiceProvider();
            Byte[] originalBytes = ASCIIEncoding.Default.GetBytes(email.ToLower());
            Byte[] encodedBytes = md5.ComputeHash(originalBytes);
    
            string hash = BitConverter.ToString(encodedBytes).Replace("-", "").ToLower();
            return "http://www.gravatar.com/avatar/"+hash+"?d=mm";
        }
    
    0 讨论(0)
  • 2021-01-05 16:39

    Using the namespace System.Security.Cryptography:

    MD5 md5 = new MD5CryptoServiceProvider();
    Byte[] originalBytes = ASCIIEncoding.Default.GetBytes(originalPassword);
    Byte[]  encodedBytes = md5.ComputeHash(originalBytes);
    
    return BitConverter.ToString(encodedBytes);
    

    or FormsAuthentication.HashPasswordForStoringInConfigFile method

    0 讨论(0)
提交回复
热议问题