c# java sha1加密_浅谈C#中Md5和Sha1两种加密方式

1.新建控制台应用程序

2.新建类 EncryptHelper.cs

public static class EncryptHelper

{

///

/// 基于Md5的自定义加密字符串方法:输入一个字符串,返回一个由32个字符组成的十六进制的哈希散列(字符串)。

///

/// 要加密的字符串

/// 加密后的十六进制的哈希散列(字符串)

public static string Md5(this string str)

{

//将输入字符串转换成字节数组

var buffer = Encoding.Default.GetBytes(str);

//接着,创建Md5对象进行散列计算

var data = MD5.Create().ComputeHash(buffer);

//创建一个新的Stringbuilder收集字节

var sb = new StringBuilder();

//遍历每个字节的散列数据

foreach (var t in data)

{

//格式每一个十六进制字符串

sb.Append(t.ToString("X2"));

}

//返回十六进制字符串

return sb.ToString();

}

///

/// 基于Sha1的自定义加密字符串方法:输入一个字符串,返回一个由40个字符组成的十六进制的哈希散列(字符串)。

///

/// 要加密的字符串

/// 加密后的十六进制的哈希散列(字符串)

public static string Sha1(this string str)

{

var buffer = Encoding.UTF8.GetBytes(str);

var data = SHA1.Create().ComputeHash(buffer);

var sb = new StringBuilder();

foreach (var t in data)

{

sb.Append(t.ToString("X2"));

}

return sb.ToString();

}

}

3.修改 Program.cs 进行输出

class Program

{

static void Main(string[] args)

{

const string s = "123456";

Console.WriteLine("密码:"+s);

Console.WriteLine("Md5:"+s.Md5());

Console.WriteLine("长度:"+s.Md5().Length);

Console.WriteLine("Sha1:" + s.Sha1());

Console.WriteLine("长度:" + s.Sha1().Length);

Console.Read();

}

}

4.效果图

e1bb5abfedd01ba7234fcb9a17b1ca56.png

以上所述就是本文的全部内容了,希望大家能够喜欢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值