2 sinat 35530596 sinat_35530596 于 2016.09.18 11:41 提问

jsp登陆密码加密,数据库看到密文

图片说明
如图,登陆密码加密,在数据库里看到密文。如何编写代码?请教各位大神

7个回答

hanzi198511
hanzi198511   2016.09.18 11:44

可以在处理的时候用md5加密方式加密就行了

ProfessionalStudy
ProfessionalStudy   2016.09.18 11:45

一般为了防止即使数据库泄露,他们也没有办法获得用户密码,所以用了MD5等多种不可逆的方式加密密码存储在数据库中

w172087242
w172087242   Ds   Rxr 2016.09.18 11:43

1.密码可以使用md5进行加密,加密前可以放置自己的独有key进行混淆,也可以直接加密;
2.在验证密码时,接收用户输入,用同样的方式进行加密,然后和数据库中的密码对比,
一致则表示密码输入正确。

希望能够帮到你...

w172087242
w172087242 回复sinat_35530596: http://blog.csdn.net/w172087242/article/details/51273594 这个里面有个计算正常md5的,混淆就是打乱顺序+传入之插入固定key之类的
大约一年之前 回复
sinat_35530596
sinat_35530596 能具体说下核心代码吗
大约一年之前 回复
zjhwqx
zjhwqx   2016.09.18 12:48

把表单提交过来的密码进行md5加密,再和数据库里面的密码进行比较。

sinat_35530596
sinat_35530596 数据库里的密码现在是明文,如何才能显示密文?
大约一年之前 回复
u013829202
u013829202   Rxr 2016.09.18 13:54

MD5就是一种加密方式,你下个md5的工具jar包。放在你的项目里面,
通过md5方法,把你前台传过来的密码放在md5的参数里面。 然后存在
数据库就好了。 不会就去百度下。 这东西都封装好了,直接用就行。
想研究底层怎么实现就去看他的源码。

aschouas
aschouas   2016.09.18 14:43

public static String encrypt(String plain) {
MessageDigest md5 = null;
byte[] byteArray = null;
try {
md5 = MessageDigest.getInstance("MD5");
byteArray = plain.getBytes("UTF-8");
} catch (Exception e) {
throw new DpsBizException(e);
}
byte[] md5Bytes = md5.digest(byteArray);
StringBuffer hexValue = new StringBuffer();
for (int i = 0; i < md5Bytes.length; i++) {
int val = ((int) md5Bytes[i]) & 0xff;
if (val < 16) {
hexValue.append("0");
}
hexValue.append(Integer.toHexString(val));
}
return hexValue.toString();
}

shihengzhen101
shihengzhen101   Rxr 2016.09.18 15:42

你的问题是问实现这种逻辑,还是询问加密方法?

sinat_35530596
sinat_35530596 数据库里的用户密码原先都是明文,现在要显示密文,如何用md5加密来实现?
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片