MD5、SHA-1加密

        学习C#也有小半月了,前段时间用心的看了【传智播客.Net培训―C#编程基础】视频,跟着视频进行了一些练习,感觉自己也算是学到一点东西。期间也找过很多资料,从51CTO家园下载了很多学习文件,也有从CSDN下载,但都没有找到合适的,不是太深奥了,就是代码走不通。后来,看了很多大神的博客文摘,感觉受益匪浅,大神的经验之谈,让我也避免了走向弯路。

        说着又多了,其它不说了,我只记一点:多写博客分享自己所得,将自己学到的东西晒出来,写代码不是自己懂了就行了,我们要写出的代码是别人能一眼看懂,那才是好代码。总结的不好,请见谅。

        下面说说MD5、SHA-1加密,这也是我最近看到的。感觉可以记下来,以后要找到也方便。这是我写出来的Form程序最终效果:

        用C#写加密,C#已经为我们提供了一个命名空间,专门用来写加密。因此,我们首先要调用这个命名空间。

using System.Security.Cryptography;

调用了命名空间,我们就可以直接写我们需要的代码了。

下面是MD5加密的方法:

/// <summary>
/// MD5加密
/// </summary>
/// <param name="src">源字符串</param>
/// <returns>加密后字符串</returns>
public string getMD5(string src)
{
StringBuilder sb = new StringBuilder();
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
byte[] data = md5.ComputeHash(Encoding.Default.GetBytes(src));
foreach (byte item in data)
{
sb.AppendFormat("{0:x2}",item);
}
return sb.ToString();
}

同样,SHA-1的加密方法如下:

    

/// <summary>
/// SHA-1加密
/// </summary>
/// <param name="src">源字符串</param>
/// <returns>加密后字符串</returns>
public string getSHA(string src)
{
StringBuilder sb = new StringBuilder();
SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider();
byte[] data = sha1.ComputeHash(Encoding.Default.GetBytes(src));
foreach (byte item in data)
{
sb.AppendFormat("{0:x2}", item);
}
return sb.ToString();
}

后面Form窗体,以及里面的控件我就不写了,你可以根据自己的喜好自己编写。完成Form窗体的设计后,只需要在button_click事件调上述两个方法就可以了。

        欧勒,完成,是不是感觉很简单,是不是很酷。还没用过的童鞋,赶紧弄上来晒晒吧。

你可能感兴趣的:(MD5加密,SHA加密)