mysql 密码 作用_数据库编程中密码盐起什么作用

privatevoidbtnLogin_Click(objectsender,RoutedEventArgse){stringusername=txtUserName.Text;stringpwd=pwdPassword.Password;Operatorop=newOperatorDAL().GetByUserName(username...

private void btnLogin_Click(object sender, RoutedEventArgs e)

{

string username = txtUserName.Text;

string pwd = pwdPassword.Password;

Operator op = new OperatorDAL().GetByUserName(username);

if (op == null)

{

MessageBox.Show("用户名或者密码错误!");

}

else

{

string dbMd5 = op.Password; //数据库中存储的密码值

string mymd5 = CommonHelper.GetMD5(pwd +CommonHelper.GetPasswordSalt());

if (dbMd5 == mymd5)

{

//MessageBox.Show("登录成功");

DialogResult = true;

}

else

{

MessageBox.Show("用户名或者密码错误!");

}

}

}

这是一段用户登录时密码和用户名验证程序,当中GetPasswordSalt()为下面函数

public static string GetPasswordSalt()

{

string salt = ConfigurationManager.AppSettings["passwordSalt"];

return salt;

}

其中passwordSalt为程序配置中的节

GetMD5函数如下

public static string GetMD5(string sDataIn)

{

MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();

byte[] bytValue, bytHash;

bytValue = System.Text.Encoding.UTF8.GetBytes(sDataIn);

bytHash = md5.ComputeHash(bytValue);

md5.Clear();

string sTemp = "";

for (int i = 0; i < bytHash.Length; i++)

{

sTemp += bytHash[i].ToString("X").PadLeft(2, '0');

}

return sTemp.ToLower();

}

程序段基本上就是这样,这里的密码盐(可能不是通用术语)到底是起什么作用???谢谢!

展开

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值