上篇文章​​bcrypt加密password BCrypt对密码进行加密及密码验证​​中使用的是BCrypt,本篇使用BCrypt.Net,其实和BCrypt差不多,只不过是NuGet程序包管理器使用的一个是BCrypt,一个是BCrypt.Net.本文详细介绍BCrypt.Net的使用

1、新建项目ConsoleBCrypt,使用NuGet程序包管理器添加BCrypt.Net

2、Program.cs中添加如下代码:

 

using DevOne.Security.Cryptography.BCrypt;
using System;

namespace ConsoleBCrypt
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("BCrypt.Net.BCrypt");
string salt = BCrypt.Net.BCrypt.GenerateSalt(28);
Console.WriteLine($"产生随机盐 salt:{salt}");
salt = BCrypt.Net.BCrypt.GenerateSalt();
Console.WriteLine($"产生随机盐 salt:{salt}");
string password = "1234567890";
Console.WriteLine($"明文:{password}");
string pwd = BCrypt.Net.BCrypt.HashPassword(password);
Console.WriteLine($"加密以后的密文:{pwd}");
pwd = BCrypt.Net.BCrypt.HashPassword(password, 4);
Console.WriteLine($"加密以后的密文:{pwd}");
pwd = BCrypt.Net.BCrypt.HashPassword(password, salt);
Console.WriteLine($"加密以后的密文:{pwd}");
pwd = BCrypt.Net.BCrypt.HashString("密文");
Console.WriteLine($"加密以后的密文:{pwd}");
pwd = BCrypt.Net.BCrypt.HashString("密文", 4);
Console.WriteLine($"加密以后的密文:{pwd}");
bool isMatchpasswordAndpwd = BCrypt.Net.BCrypt.Verify("密文", pwd);
Console.WriteLine($"明文和加密以后的密文是否匹配:{isMatchpasswordAndpwd}");
Console.ReadLine();
}
}
}

 

3、运行结果:

 

BCrypt对密码进行加密及密码验证_.net

 


 

 

龙腾一族至尊龙骑