首页 > 代码库 > 安全性登录模块开发
安全性登录模块开发
1.非安全性登录模块开发
安全隐患:
数据明文,数据库被荡下来不安全,不能明文存储数据明文,数据库被荡下来不安全,不能明文存储
明文传输,中间窃听,就关注传输过程的加密。wireshark
2.安全加固1
摘要处理:在MySQL中对数据摘要处理
sql语句:sha update userinfo(表名) set password = sha(password)
md5 update userinfo set password = MD5(password) 比sha短
在jsp中应用md5校验数据
if(p.equals(password)) ---> if(p.equals(DigestUtil.getMD5(password.getbytes))
缺点:容易根据密文位数推测算法,从而使用工具破解
真实密码相同,加密过的密码也相同
3.安全加固2
加盐: 在原有密码中加入其他成分(一般是用户自有且不变的因素),以此增加系统复杂度。
当这种盐和用户密码相结合后,再通过摘要处理,就能得到隐蔽更强的摘要值。
sql:update userinfo set password = sha(concat(password,email))
if(p.equals(password)) ---> if(p.equals(DigestUtil.getsha1(password+email).getbytes)))
缺点:(前两种)这些数据在发出去之前仍是没加密的,通过抓包仍是明文。
4.安全加固3
传输加密:在客户端进行md5的摘要处理,使用md5.js对表单加密(传输加密),在jsp中校验数据
这样,wireshark抓包后,就是密文了
重要代码明天补上
安全性登录模块开发