如何在C#中生成MD5和并执行代码?

时间:2011-05-31 07:24:45

标签: c# md5

我是C#的新手,只是想问一些问题。

  1. 我在C#中获得了MD5总和,我应该把代码放在一个类中,但是我要从哪里调用这个方法代码呢? ASPX还是什么?我记得上课不能自己跑。

  2. 如何编写调用方法?

  3. 我想要创建MD5的文件是一个文本文件。

  4. 这是我发现的:

    public static string CalculateMD5Hash(string strInput)
    {
      MD5 md5 = System.Security.Cryptography.MD5.Create();
      byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(strInput);
      byte[] hash = md5.ComputeHash(inputBytes);             
    
      StringBuilder sb = new StringBuilder();            
      for (int i = 0; i < hash.Length; i++)            
      {                
        sb.Append(hash[i].ToString("x2")); 
      }         
      return sb.ToString();       
    } 
    

1 个答案:

答案 0 :(得分:1)

您需要将此方法放在某个类中。例如,您可以使用以下内容创建控制台应用程序:

using System;
using System.Security.Cryptography;
using System.Text;

public class CryptoUtils
{
    public static string CalculateMD5Hash(string strInput)
    {
        MD5 md5 = System.Security.Cryptography.MD5.Create();
        byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(strInput);
        byte[] hash = md5.ComputeHash(inputBytes);
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < hash.Length; i++)
        {
            sb.Append(hash[i].ToString("x2"));
        }
        return sb.ToString();
    } 
}

class Program
{
    static void Main()
    {
        var input = "some input";
        var md5 = CryptoUtils.CalculateMD5Hash(input);
        Console.WriteLine(md5);
    }
}

现在CryptoUtils类可以放在一个单独的文件中。