• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP.NET with C#使用md5,sha1加密初探

发布: 2007-6-30 23:38 | 作者: admin | 来源: | 查看: 20次 | 进入软件测试论坛讨论

领测软件测试网 /******雪龙原创*******/
//版权所有,末经作者同意不得转载

今天的实验还是比较顺利的,早上正则表达式用得很爽,晚上的MD5和SHA1加密也是没什么难度就用上了,下面是实验总结(洗衣机在洗衣服,趁机上网写点东西)。

  先补充点加密知识:MD5和SHA1都是散列加密技术,所谓的散列加密就是无论你的输入字符串是什么,有多长,加密后都变成唯一的定长的加密串,MD5加密后的密串长度有16位的和32位两种,SHA1我今天数了一下有40位,这种加密方式的特点是加密方式是公开的,但你不能逆推,要破解只能穷举,难度好大的,理论上8位的密码组合有(26字母+10数字+21常用英文符号)的8次方种可能,以现在的比较好的机器机器要算上一年多。不过最近MD5听说被破解了,能很快碰撞到密码,不过破解机还没有流传出来,一般应用还是可以的,SHA1就相对要安全一点。

散列加密,用函数表示是这样的y=f(x),x是输入的字符串,f是算法,y是加密后的密串,f是公开的,号称唯一的x只对应唯一的y,x只有用户知道,所以y是唯一的,现在破解的MD5就是发现了有几个x可以对应y,而且从y可以很快地找到x。

加密技术流行的还有用于身份验证的公钥加密,有兴趣的朋友可以参考相关的加密书籍。

C#中使用MD5非常简单,使用下面的静态方法:
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(temp_str, "MD5");
就可以得到加密后的字符串了,该静态方法很简单,temp_str就是你要加密的字符串变量,"MD5"表示使用MD5加密,如果用"SHA1",就是用SHA1加密了,够easy吧,赶快把你的密码验证加密吧。

从上面我们可以体会到,C#真不愧是MicroSoft的镇山之宝,提供的命名空间涵盖了我们常用的方方面面,你还等什么,快来和我一起学C#吧。

前段时间一直在研究C#中WinForm的自定义控件的使用,现在已经可以自己写自定义控件了,觉得它的代理机制和订阅机制还是很不错的,接下来就想把这部分的知识用在ASP.NET中,看看Web自定义控件的使用情况是如何的,如果你也想知道,请期待我的下一篇报告吧!


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网