最新公告
  • 欢迎您光临源码库,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入
  • 简单的MD5密码加密和解密方法

    简单的MD5密码加密和解密方法。MD5的算法是不可逆的,MD5被广泛用于密码验证和消息体完整性验证。
    下面的例子用到了密码加密和登陆时的解密的基本方法。当然这样很容易被暴力破解,可以做其他改进,如先设计一个足够复杂的密码,然后将他的MD5值与原密码MD5值相加后再求一次MD5值,这样可以增加破解难度。
    简单示例如下:

    [csharp] view plain copy
    static void Main(string[] args) 
    { 
      
        Console.WriteLine("input password"); 
        string source = Console.ReadLine(); 
        string hash = GetMd5Hash(source); 
        Console.WriteLine("password: {0}, MD5 {1}", source, hash); 
        Console.WriteLine("input password"); 
        string psd = Console.ReadLine(); 
        if (VerifyMd5Hash(psd, hash))//验证成功返回OK 
            Console.WriteLine("OK"); 
        else
            Console.WriteLine("ERROR"); 
        Console.ReadKey(); 
    } 
      
    static string GetMd5Hash(string input)//获取密码对应的MD5字符串 
    { 
        using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider()) 
        { 
            return BitConverter.ToString(md5.ComputeHash 
                (UTF8Encoding.Default.GetBytes(input))).Replace("-", ""); 
        } 
    } 
      
    static bool VerifyMd5Hash(string input, string Hash)//比较输入密码 
    { 
        string hashOfInput = GetMd5Hash(input); 
       // StringComparer comparer = StringComparer.OrdinalIgnoreCase;//忽略大小写的比较器 
        return hashOfInput.CompareTo(Hash) == 0 ? true : false; 
       // return comparer.Compare(hashOfInput, Hash) == 0 ? true : false;

     

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

    源码资源库 » 简单的MD5密码加密和解密方法