博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为什么C# md5 32位加密算法,密码明文会出现31位
阅读量:7129 次
发布时间:2019-06-28

本文共 587 字,大约阅读时间需要 1 分钟。

public string returnmima(string str)        {            string ps = "";            MD5 md5 = MD5.Create();            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str));            for (int i = 0; i < s.Length; i++)            {                ps += s[i].ToString("x");            }            return ps;        }这个是我的代码。要加密的字段:1234abcd结果为:        ef73781effc577410f87fe2f437a435但是真确应该为:ef73781effc5774100f87fe2f437a435当中怎么多了个0,我怎么就少了个0????
 
 
这个是很常见的错误,你字节转换成字符串的时候要保证是2位宽度啊,某个字节为0转换成字符串的时候必须是00的,否则就会丢失位数啊。不仅是0,1~9也一样。因此把那个ps += s[i].ToString("x"); 改为ps += s[i].ToString("x2");就ok了。

转载地址:http://yxoel.baihongyu.com/

你可能感兴趣的文章
React中使用Ant Table组件
查看>>
第四篇 快速、轻量、可扩展、易于使用的EmEditor
查看>>
MySQL删除小写记录
查看>>
用shell脚本收集查询IP信息的网站
查看>>
shiro整合oauth
查看>>
超级网管员——网络管理
查看>>
AjaxControltoolkit(工具包)安装步骤说明
查看>>
利用组策略进行的一次Windows主机安全整改
查看>>
Ruby语法学习笔记(1)
查看>>
Windows Phone 7 使用选择器(Chooser)
查看>>
QOS 之 WRED
查看>>
ASP.NET MVC5 知识点整理
查看>>
CCNP 640-892知识点中文精简解释
查看>>
listview适配器与加载过程详解
查看>>
SDN控制器列表
查看>>
LeetCode - 8. String to Integer (atoi)
查看>>
在两个php下session无法使用的问题
查看>>
说一说关于破解支付宝AR红包的事
查看>>
Oracle DG之--构建Physical Standby(一主库对应多备库)
查看>>
深入学习 Hyper-V 的导出和导入
查看>>