C# 加密-加密后为何有两种结果的字符串?

作者:vkvi 来源:ITPOW(原创) 日期:2009-2-1

问:C# 加密后为何有两种结果的字符串?

比如 cftea 的 MD5 加密后:

  • 有的人的结果是:c2e1861ca90e67ce1f9a62f9c27d8bdc
  • 有的人的结果是:wuGGHKkOZ84fmmL5wn2L3A

答:这是对字节的两种不同表示结果。

第一种是用十六进制表示的(FormsAuthentication.HashPasswordForStoringInConfigFile 就是这种,只是是大写的),具体请参见 BitConverter。如果用 BitConverter 时没有替换掉“-”的话,加密结果中还会有“-”分隔开。

第二种是用的 Base64 编码,具体请参见 Base64 编码简介

相关文章