加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

.net编程比较简单实用的加密方法HASH加密和MD5加密

发布时间:2020-12-12 15:12:11 所属栏目:MsSql教程 来源:网络整理
导读:csdn 标签: MD5, HASH, BINART, RAW, 简单实用, 加密 简单介绍一下HASH HASH就是把一系列不定长2进制输出为一个定长的2进制。 HASH用来做什么?现在一般是用来验证一段信息有没被篡改过或者就是保存密码的HASH值用于日后验证又防止别人查看这个记录窃取
csdn 标签: MD5, HASH, BINART, RAW, 简单实用, 加密

简单介绍一下HASH
HASH就是把一系列不定长2进制输出为一个定长的2进制。

HASH用来做什么?现在一般是用来验证一段信息有没被篡改过或者就是保存密码的HASH值用于日后验证又防止别人查看这个记录窃取密码。

HASH值是不可逆的,不存在破解不破解的问题

 newUser.UserName = txtUserName.Text;
 newUser.Password = EncryptPassword(txtPassword.Text);
EncryptPassword如下:
 public static byte[] EncryptPassword(string password)
        {
            UnicodeEncoding encoding = new UnicodeEncoding();
            byte[] hashBytes = encoding.GetBytes(password);
            SHA1 sha1 = new SHA1CryptoServiceProvider();
            byte[] cryptPassword = sha1.ComputeHash(hashBytes);
            return cryptPassword;
        }

用户名密码都是AA1 加密后长度64位

简单介绍一下MD5

MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laboratory for computer science和rsa data security inc的ronald l. rivest开发出来, 经md2、md3和md4发展而来。

MD5具有很好的安全性(因为它具有不可逆的特征,加过密的密文经过解密后和加密前的相同的可能性极小)

newUser.UserName = txtUserName.Text;                   
newUser.Password = EncryptPasswordMD5(txtPassword.Text);

EncryptPasswordMD5 如下:
 public static byte[] EncryptPasswordMD5(string password)
        {
            UnicodeEncoding encoding = new UnicodeEncoding();
            byte[] result = encoding.GetBytes(password);     
            MD5 md5 = new MD5CryptoServiceProvider();
            byte[] cryptPassword = md5.ComputeHash(result);
            return cryptPassword;
        }

用户名 密码 都是BB1 加密后长度32位

注意点

  • 两个都要引用
    using System.Security.Cryptography;
    using System.Text;
  • 存储在数据库中的时候 数据库的字段要用二进制

举例SQLSERVER BINARY ????? ORACLE RAW(200)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读