Md5加密解密,用 System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile('','')

stringstrMd5=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFi... string strMd5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile("123", "md5"); md5加密的字符,怎么解密??高手指点!!(asp.net) 展开
 我来答
己闻楣Sx
2011-07-22 · TA获得超过1935个赞
知道大有可为答主
回答量:1057
采纳率:93%
帮助的人:910万
展开全部
这两天见到类似的问题好几个了,重申一个概念,揭示一个初学者的误区,如下:
1、md5不是加密算法,而是散列算法,数据变换过程和结果是不可逆的,即无法从md5编码逆向生成原文。
2、称作加密的,一定需要相应的解密,即数据变换必须是可逆的,或称双向的;简单举几个例子来说明什么叫可逆和不可逆:A=B+5,则B=A-5,可逆,异或运算也是可逆的;A=B%5(A等于B除以5之后的余数),则A的范围是0~4,假设为3,能够确定B吗?不行,3、8、13等都成立,这就是不可逆,“与、或”运算也是不可逆的。
3、md5编码实际上就是md5散列值,该值可以视作原始数据的摘要或者指纹,可以想象一下:根据新闻的摘要,能够还原出新闻的全文吗?根据一个人的指纹,就能知道这个人的所有信息吗(如性别、身高、体重、肤色等)?
4、md5经常被误以为是加密的根源是以下场景:对各种系统中的身份认证来说,“用户名+密码”的模式非常简单,故大量存在,很多编程人员为了将“密码”不明示,就对密码串进行md5散列,在数据库或文件中保存md5编码;但是,千万要注意,真正到了鉴别用户身份是否合法的时候,不是通过早先记录下来的md5编码生成原文再与用户当场输入的密码串进行比较,而是将用户当场输入的密码串也实施md5变换,比较的是前后两次生成的md5编码串。

希望这个科学常识对大家有用,不要再试图从md5编码揣测原文了,sha1编码同理。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式