C# MD5-16位加密实例,32位加密实例(两种方法)

1.MD5 16位加密实例
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;

namespace md5
{
    
class Program
    
{
        
static void Main(string[] args)
        
{
             Console.WriteLine(UserMd5(
"8"));
             Console.WriteLine(GetMd5Str(
"8"));
         }

        
/// <summary>
        
/// MD5 16位加密 加密后密码为大写
        
/// </summary>
        
/// <param name="ConvertString"></param>
        
/// <returns></returns>

        public static string GetMd5Str(string ConvertString)
        
{
             MD5CryptoServiceProvider md5 
= new MD5CryptoServiceProvider();
            
string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)),48);
             t2 
= t2.Replace("-""");
            
return t2;
         }

  /// <summary>
        
/// MD5 16位加密 加密后密码为小写
        
/// </summary>
        
/// <param name="ConvertString"></param>
        
/// <returns></returns>

        public static string GetMd5Str(string ConvertString)
        
{
             MD5CryptoServiceProvider md5 
= new MD5CryptoServiceProvider();
            
string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)),48);
             t2 
= t2.Replace("-""");

            t2 = t2.ToLower();

             return t2;
         }



        
/// <summary>
        
/// MD5 32位加密
        
/// </summary>
        
/// <param name="str"></param>
        
/// <returns></returns>

       static  string UserMd5(string str)
        
{
            
string cl = str;
            
string pwd = "";
             MD5 md5 
= MD5.Create();//实例化一个md5对像
            
// 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 
            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
            
// 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
            for (int i = 0; i < s.Length; i++)
            
{
                
// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符 

                 pwd 
= pwd + s[i].ToString("X");
                
             }

            
return pwd;
         }

     }

}

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

public static string StringToMD5Hash(string inputString)
        {
            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
            byte[] encryptedBytes = md5.ComputeHash(Encoding.ASCII.GetBytes(inputString));
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < encryptedBytes.Length; i++)
            {
                sb.AppendFormat("{0:x2}", encryptedBytes[i]);
            }
            return sb.ToString();
        }

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值