MD5加密和⼿机号登录
参考:
MD5信息摘要算法(英语:MD5 Message-Digest Algorithm)⼀种被⼴泛使⽤的密码散列函数,可以产⽣出⼀个128位(16字节)的散列值(hash value),⽤于确保信息传输完整⼀致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计
md5理论上128个字节可以对应n多个信息,所以理论上不可以破解,输⼊任意字符串,得到不同的结果,根据128位的输⼊信息不可能得到密⽂,⽐如⼀个字符串映射成128bit的整数,理论上有2*128种可能
但是在实际的过程:
可以通过⽤户暴⼒⽣成各种字符串进⾏组合然后进⾏hash,很多⽤户的密码不够复杂,所以很容易被这种⽅法⽣成出来,防范这种⽅式的办法主要是⼀个随机salt,只要salt够长,会带来⿇烦,
还有种⽅式就是彩虹表和字典,通过数据库把常见字符转换为MD5存储为彩虹表,然后直接反查询,两种⽅法得到字典,⼀种是⽇常搜集的⽤做密码的字符串表,另⼀种是⽤排列组合⽅法⽣成的.通过⼤量例⼦发现某密⽂中A对应C,然后我会记在数据字典中,下次直接⽤C代替A,看上去好像了破解了,实则并没有破解,只是到了规律适应这种密⽂⽽已。
密码字符串是什么MD5进⾏了加密之后不可以逆转
将密盐存储在redis⾥⾯,⽅式为 StringRedisTemplate<salt:md5(SECRET+tell),salt>,获取的时候先get密盐, tele+miyan得到数据
> 后续更新很少见到这种要求如果遇到赶紧跑因为⼿机号需要做索引的

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。