1 / 2
文档名称:

实现md5加密.docx

格式:docx   大小:31KB   页数:2页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实现md5加密.docx

上传人:百里登峰 2020/8/26 文件大小:31 KB

下载得到文件列表

实现md5加密.docx

文档介绍

文档介绍:md5加密简单的说就是把一段明文 通过某种运算方式 求出密文。例如:明文为:abcdefg通过一些列运算得到密文7ac66c0f148de9519b8bd264312c4d64它具有两个特性:,。无碰撞是指: 7ac66c0f148de9519b8bd264312c4d64这段密文只能由abcdefg这段明文得到,除此之外其他的明文加密后其值绝对不会等于7ac66c0f148de9519b8bd264312c4d64,也就是说 没有那两个明文 加密后会得到相同的密文。不可逆是指: 明文通过加密后得到密文,而无法通过密文 求出明文。也就是说 当我们知道明文 adcdefg可以通过加密得到 7ac66c0f148de9519b8bd264312c4d64,但是我们如果知道某段文字加密后得到7ac66c0f148de9519b8bd264312c4d64,却无法算出7ac66c0f148de9519b8bd264312c4d64这段文字是由谁加密而来的。那么有同学一定会问,具体应该运用在什么地方?一般来说我们在做网站登录系统的时候 密码都是密文保存的,一般用的都是md5加密。用户在填写用户名 密码点击注册之后,我们验证通过,要把用户信息存入数据库的时候,就需要先把用户输入的密码,通过md5加密的方式,把加密后的密文,存入密码的字段。那么一定有同学会细心的发现,刚刚还提到过 md5加密是不可逆的,那么用户登录的时候如何判断用户输入的密码是否正确的呢?例如用户设置的密码 为abcdefg,而存储的时候我们存储的是abcdefg加密过之后得到的值7ac66c0f148de9519b8bd264312c4d64,那么用户再次登录时 会输入密码abcdefg,我们如何比较两者是否相等?我们无法通过加密后的值换算出加密前的值,因此我们通常的做法是,把用户再次登录时输入的密码再次加密和数据库中存放的值进行比对,如果相等 则说明输入的密码正确。ok,基本原理和运用场景基本说的差不多了, 中如何进行md5加密。中md5的加密方式很简单,代码如下:代码如下:(str,md5).tolower();需要注意的是,如果 md5加密的时候转换的是小写,那么在验证的时候也要转换成小写,保持统一。另外上述方式为 32位的md5加密方式,如果是16位的则取32位加密结果的中间16位的值即可。这里还有示例,大家参考一下代码如下:///<summary>///md5加密///</summary>///<paramname=strsource>需要加密的明文</param>///<returns>返回32