ASP.NET MD5和SHA1的加密方法是什么

技术ASP.NET MD5和SHA1的加密方法是什么这篇文章将为大家详细讲解有关ASP.NET MD5和SHA1的加密方法是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了

本文将详细介绍ASP.NET MD5和SHA1的加密方法。文章内容质量很高,我就分享给大家作为参考。希望大家看完这篇文章后对相关知识有一定的了解。

MD5和SHA1的加密方法有哪些?我们先来看看什么是MD5。MD5的全称是Message-Digest Algorithm 5,由麻省理工学院计算机科学实验室的Ronald l. rivest和Rsa数据安全公司在20世纪90年代初开发,由md2、md3和md4发展而来。它的功能是在用数字签名软件签署私钥之前,将大容量信息“压缩”成安全格式(即把任意长度的字节串转换成一定长度的大整数)。无论md2、md4还是md5,都需要获取随机长度的信息,生成128位的信息摘要。

加密哈希函数将任意长度的二进制字符串映射为固定长度的小二进制字符串。加密散列函数具有这样的属性,在计算中不可能找到两个具有相同散列值的不同输入;也就是说,只有当相应的数据也匹配时,两组数据的哈希值才会匹配。数据的少量变化将导致哈希值的不可预测的变化。所以你很难从加密文本中找到线索。

什么是ASP.NET SHA1 sha1加密?SHA1的全称是安全散列算法。

MD5算法的哈希值为128位。而SHA1算法的哈希值是160位。两种算法都是不可逆的。

2004年8月17日,在美国加州圣巴巴拉举行的国际密码学大会(Crypto’2004)上,中国山东大学王小云教授作了关于MD5、HAVAL-128、MD4和RIPEMD算法解码的报告,并公布了MD系列算法的解码结果。宣告世界密码标准坚不可摧的MD5堡垒轰然倒塌,在密码学领域引起轩然大波。但我觉得这种加密安全性足够我们做普通软件了。

介绍了MD5和SHA1加密方法的概念。现在具体有哪些类?

我们通常使用最多的是加密用户密码,并将加密后的密码存储在数据库中。在比较密码时,我们对用户输入的密码进行加密,然后与数据库中的密文进行比较。至于如何在ASP.NET类中实现加密算法,我们不需要关心,只要使用就可以了。

以下是Asp.net的一些加密方法。有两种加密算法,即上面提到的MD5和SHA1。这里我就以MD5为例。SHA1大致相同,但使用的类别不同。

ASP.NET和SHA1加密的MD5相关类别:

系统。安全性。密码学。MD5

系统。安全性. cryptography . MD5 cryptoserviceprovider()

系统。web . security . formsauthentication . hashpasswordsforstoringconfigfile(strSource,' MD5 ')

MD5和SHA1加密的SHA1相关类别:

系统。安全性.密码学. SHA1

系统。安全性.密码学. SHA1CryptoServiceProvider()

系统。web . security . formsauthentication . hashpasswordsforstoringconfigfile(strSource,' SHA1 ')

方法如下:(使用vs2005)。

/**////summary///Method 1 :通过使用新运算符创建对象来返回16位加密结果/////summary//param name=' strsource '待加密明文/param///返回。结果采用32位加密结果的第9位到第25位/returnsppublicstringlet _ MD5 _ method 1(字符串strsource){//new system . security . cryptography . md5md 5=new system . security . cryptography . MD5 cryptocryptoserviceprovider();//获取机密文本节数组字节[]字节结果=

nbsp;md5.ComputeHash(System.Text.Encoding.Default.GetBytes(strSource));     //转换成字符串,并取9到25位    string strResult = BitConverter.ToString(bytResult, 4, 8);    //转换成字符串,32位    //string strResult = BitConverter.ToString(bytResult);     //BitConverter转换出来的字符串会在每个字符中间产生一个分隔符,需要去除掉    strResult = strResult.Replace("-", "");    return strResult;   }    /**//// <summary>   /// 方法二:通过调用特定加密算法的抽象类上的 Create 方法,创建实现特定加密算法的对象。   /// </summary>   /// <param name="strSource">需要加密的明文</param>   /// <returns>返回32位加密结果</returns>   public string Get_MD5_Method2(string strSource)   {    string strResult = "";     //Create    System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();     //注意编码UTF8、UTF7、Unicode等的选择     byte[] bytResult = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(strSource));     //字节类型的数组转换为字符串    for (int i = 0; i < bytResult.Length; i++)    {   //16进制转换    strResult = strResult + bytResult[i].ToString("X");    }    return strResult;    }       /**//// <summary>    /// 方法三:直接使用HashPasswordForStoringInConfigFile生成    /// </summary>    /// <param name="strSource">需要加密的明文</param>   /// <returns>返回32位加密结果</returns>    public string Get_MD5_Method3(string strSource)    {    return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "MD5");    }

这些加密函数都是在服务器端执行,也就是说,当用户输入密码后,从客户端到服务器端传输时,用户的密码没有任何保护,很危险。银行的做法是在客户端安装ActiveX控件,在客户端就把一些重要信息进行加密,再发送。这个偶就不会拉,很希望能学习学习做这种ActiveX控件。

ASP.NET MD5和SHA1加密的基本情况就介绍到这里。

关于ASP.NET MD5和SHA1的加密方法是什么就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/53560.html

(0)

相关推荐

  • JS 创建元素的三种方法

    技术JS 创建元素的三种方法 JS 创建元素的三种方法1、动态创建元素一 document.write()例如向页面中输出一个 li 标签pre class="html" name="code"span

    礼包 2021年11月14日
  • 稳压二极管工作原理,稳压二极管的工作原理是什么

    技术稳压二极管工作原理,稳压二极管的工作原理是什么稳压管的工作原理:稳压管也是一种晶体二极管,它是利用PN结的击穿区具有稳定电压的特性来工作的。稳压管在稳压设备和一些电子电路中获得广泛的应用。把这种类型的二极管称为稳压管

    生活 2021年10月24日
  • 如何使用php实现EOS离线签名交易

    技术如何使用php实现EOS离线签名交易这篇文章给大家分享的是有关如何使用php实现EOS离线签名交易的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。EOS区块链的钱包服务器Keosd,提供了s

    攻略 2021年11月25日
  • Java集合框架之如何使用Stack Queue Deque

    技术Java集合框架之如何使用Stack Queue Deque本篇内容主要讲解“Java集合框架之如何使用Stack Queue Deque”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编

    攻略 2021年10月25日
  • vue中len函数的功能是什么(vue中babel作用)

    技术vue中babel指的是什么意思这篇文章将为大家详细讲解有关vue中babel指的是什么意思,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 在vue中,

    攻略 2021年12月22日
  • 在Mac下怎么快速重置mysql root密码

    技术在Mac下怎么快速重置mysql root密码这篇文章将为大家详细讲解有关在Mac下怎么快速重置mysql root密码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

    攻略 2021年10月29日