C#常用的加密算法之一 MD5

C#常用的加密算法之一 MD5

参考文章

  1. MD5加密概述,原理及实现
  2. C#常用的加密算法:MD5、Base64、SHA1、SHA256、HmacSHA256、DES、AES、RSA

MD5概述

MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。

MD5特点

  1. 不可逆,相同数据的MD5值肯定一样,不同数据的MD5值不一样
    一个MD5理论上的确是可能对应无数多个原文的,因为MD5是有限多个的而原文可以是无数多个。比如主流使用的MD5将任意长度的“字节串映射为一个128bit的大整数。也就是一共有2128种可能,大概是3.4*1038,这个数字是有限多个的,而但是世界上可以被用来加密的原文则会有无数的可能性
  2. 压缩性:任意长度的数据,算出的MD5值长度都是固定的(相当于超损压缩)。
  3. 容易计算:从原数据计算出MD5值很容易。
  4. 抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。

MD5原理

请参考:

你可能感兴趣的:(C#加密,c#,哈希算法,开发语言)