/// <summary>/// MD5加密/// </summary>/// <param name="str">加密字符</param>/// <param name="code">加密位数16/32;默认32</param>/// <returns></returns>public static string MD5Encrypt(string ConvertString, int code=32){string strEncrypt = string.Empty; if (code == 16){MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)), 4, 8);t2 = t2.Replace("-", ""); strEncrypt = t2.ToUpper();   //所有字符转为大写}if (code == 32){ string pwd = "";string temp = "";MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();// 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 byte[] bs = md5.ComputeHash(Encoding.UTF8.GetBytes(ConvertString));// 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得var sb = new StringBuilder();foreach (byte b in bs){// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符sb.Append(b.ToString("X2"));} strEncrypt= sb.ToString().ToUpper();  //所有字符转为大写 }return strEncrypt;}

调用

Console.WriteLine("32加密"+JimiApi.MD5Encrypt("123"));
Console.WriteLine("16加密"+JimiApi.MD5Encrypt("123",16)); 

结果

32加密202CB962AC59075B964B07152D234B70
16加密AC59075B964B0715

参考:

https://www.cnblogs.com/zpyplan/p/9565591.html

https://blog.51cto.com/myitworld/498829

你可能还需要:

最全ToString(“X2“)和ToString(“X“)详解含义及使用

https://cplvfx.blog.csdn.net/article/details/119840182

最新C# MD5 32位加密和16位加密相关推荐

  1. PHP实现MD5加密(16位加密和32位加密)

    MD5加密是我们开发过程中很常用的一个加密方法,由于它的不可逆性所以经常被用来对密码加密.常用的加密方式例如"账号+特殊符号+密码"再经过MD5加密,这样就算加密后的密码被看到了, ...

  2. admin及admin888 经过 md5加密后16位和32位代码

    下面是 admin 的加密代码: 16位加密:7a57a5a743894a0e 32位加密:21232f297a57a5a743894a0e4a801fc3 admin888的MD5加密码 16位:4 ...

  3. MD5加密,16位加密,32位加密,Base64加密,解密

    首先,16位加密与32位加密的区别,在于16位加密就是在32位加密的字符串中取中间16位,即是第9位到24位 比如现在有密码 sys 32位加密后的字符串就是 36BCBB801F5052739AF8 ...

  4. MD5工具类(含16位、32位、加盐、无盐、大小写)

    什么是MD5 MD5(Message-Digest Algorithm 5),即消息摘要算法第五版,是一种被广泛使用的密码散列函数.散列算法的基础原理是:将数据(如一段文字)运算演变为另一段固定长度( ...

  5. 块加密不足16位补充

    经常遇到块加密算法,必须固定位进行加密,所以有必须进行补充 如果是16位一般按照下面的原则 原则:必须补,并且最后一个字节为补的字节数 补的个数为 16 - Len % 16 规则:最后位为后补的个数 ...

  6. C语言:8位数据、16位数据、32位数据相互之间如何合并和拆分?

    一.将两个8位数据合并成一个16位数据. 一个8位数据不管往左移还是往右移,移完后还是8位.所以从一开始要把这个8位的数定义为16位的数. unsigned  short int a: unsigne ...

  7. C语言合并8位数据为16位数据

    uint8_t a uint8_t b uint16_t c c=a*256+b C语言:8位.16位.32位数据转换

  8. java pcm16位_Java – 将16位带符号的pcm音频数据数组转换为双数组

    我正在从事涉及音频处理的项目. 我从一个文件中取出一段音频,然后想对它进行一些处理.问题是我将音频数据作为字节数组,而我的处理是在双数组上(稍后在复杂数组上--). 我的问题是,如何正确地将我收到的字 ...

  9. max7456 C语言,如何使用8位单片机对16位INT型数据进行操作

    描述 在8位单片机中没有16位数的操作指令,所有的int型数据都要通过两个字节分开操作,使用的方法不用,生成的代码也不相同,当然效率也不一样,通过指针对16位数进行操作可以得到高效的代码. 比如通过串 ...

最新文章

  1. 2017暑假 第四周 学习总结(复习)
  2. API接口让呼叫中心渠道,变更加全面丰富
  3. 安卓逆向_24 ( 二 ) --- frida 学习记录
  4. galaxy s8 android pc,手机秒变PC!三星Galaxy S8桌面模式曝光
  5. ideatomcat老是运行以前的项目_日“吞”150吨垃圾,禅城集中式餐厨垃圾处理项目启用...
  6. final 最终 演练 java
  7. Windows 安装 Redis 教程
  8. mysql记录当前表数据的数据条数据类型_MySQL学习记录:数据类型与操作数据表...
  9. 交换知识 VLAN VTP STP 单臂路由
  10. 转帖:一份不错的游戏程序书单(比较全面,但都是英文的。。)
  11. Ubuntu16.04 设置自启动脚本,系统重启自动执行自定义脚本任务
  12. 自动控制原理学习--奈奎斯特稳定判据
  13. js定时刷新页面数据
  14. 耗纸古文风之四--登高
  15. mysql安装ecshop_ecshop图文安装过程详解
  16. 疫情期间华为面试总结
  17. 2019_WWW_Graph Neural Networks for Social Recommendation
  18. Kotlin入门-数据类与密封类 的解脱,由繁至简
  19. 网站域名过户查询_域名知识问答之域名过户
  20. 【推荐系统】今日头条推荐算法原理全文详解

热门文章

  1. java虚拟机的内存管理
  2. SAP HANA SQL执行计划(SAP HANA SQL explain plan)
  3. 文件与base64格式转换
  4. PyQt5 主题美化
  5. 叶黄素对眼睛有什么好处和作用?
  6. springbbot运行无法编译成功,找不到jar包报错:Error:(3, 46) java: 程序包org.springframework.context.annotation不存在
  7. Chrome安装JsonView插件指南
  8. 2020计算机网络原理(计网第七版)作业
  9. Fortran教程3:函数和子过程
  10. 二分查找、快速排序对比和详解