C#实现MD5和Base64加密

#region md5加密
string Str = "要加密的字符串";
MD5 md5 = MD5.Create();//实例化
//将要加密的字符串转换成字节数组
byte[] strbt = Encoding.UTF8.GetBytes(Str)
//对转换后的字节进行MD5加密
byte[] result = md5.ComputeHash(strbt);
string StrResult = BitConverter.ToString(result);
StrResult = StrResult.Replace("-", "");
//如果返回16位的值
BitConverter.ToString(result,4,12);
#endregion

#reigon Base64加密
public static class Base64Helper
{
	/// <summary>
	/// Base64加密,采用utf8编码方式加密
	/// </summary>
	/// <param name="source">待加密的明文</param>
	/// <returns>加密后的字符串</returns>
	public static string Base64Encode(string source)
	{
		return Base64Encode(Encoding.UTF8, source);
	}
	/// <summary>
	/// Base64加密
	/// </summary>
	/// <param name="encodeType">加密采用的编码方式</param>
	/// <param name="source">待加密的明文</param>
	/// <returns></returns>
	public static string Base64Encode(Encoding encodeType, string source)
	{
		string encode = string.Empty;
		byte[] bytes = encodeType.GetBytes(source);
		try
		{
			encode = Convert.ToBase64String(bytes);
		}
		catch
		{
			encode = source;
		}
		return encode;
	}

	/// <summary>
	/// Base64解密,采用utf8编码方式解密
	/// </summary>
	/// <param name="result">待解密的密文</param>
	/// <returns>解密后的字符串</returns>
	public static string Base64Decode(string result)
	{
		return Base64Decode(Encoding.UTF8, result);
	}

	/// <summary>
	/// Base64解密
	/// </summary>
	/// <param name="encodeType">解密采用的编码方式,注意和加密时采用的方式一致</param>
	/// <param name="result">待解密的密文</param>
	/// <returns>解密后的字符串</returns>
	public static string Base64Decode(Encoding encodeType, string result)
	{
		string decode = string.Empty;
		byte[] bytes = Convert.FromBase64String(result);
		try
		{
			decode = encodeType.GetString(bytes);
		}
		catch
		{
			decode = result;
		}
		return decode;
	}

	/// <summary>
	/// 判断是否经过了base64加密
	/// </summary>
	/// <param name="input"></param>
	/// <returns></returns>
	public static bool IsBase64Formatted(string input)
	{
		try
		{
			Convert.FromBase64String(input);
			return true;
		}
		catch
		{
			return false;
		}
	}
#endregion

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值