比如:把一个用户存到数据库之前进行加密,取出来进行解密才能得到想要的数据。
------解决方案--------------------
你要哪种加密?des对称加密还行?
------解决方案--------------------
这个网上多的是简单的就是移位,还有MD5加密,解密。。。
------解决方案--------------------
一般是MD5~加密密码~~MySql有自带的加密函数
------解决方案--------------------
------解决方案--------------------
能加密有啥用?你的密钥怎么保管?
------解决方案--------------------
算法很多,只要保证加密解密一致就可以了
保存数据前,调用一下加密encode方法,再保存
获取数据时,调用一下解密decode方法,再显示
怎么加密怎么解密可以自由发挥,需要现成的加密解密算法,直接谷哥或百度就可以了
------解决方案--------------------
- Java code
else if(action.equals("/regist")){ String username=request.getParameter("username"); String name=request.getParameter("name"); String pwd=request.getParameter("pwd1"); String sex=request.getParameter("sex"); String number=request.getParameter("number"); HttpSession session=request.getSession(); String number1=(String) session.getAttribute("number"); //System.out.println(number+" "+number1); if(!number.equals(number1)){ request.setAttribute("error", "验证码错误,请重新输入"); request.getRequestDispatcher("regist.jsp").forward(request, response); return; } MessageDigest md; String Pwd = null; try { md = MessageDigest.getInstance("MD5"); byte[] buf=md.digest(pwd.getBytes()); BASE64Encoder encoder=new BASE64Encoder(); Pwd=encoder.encode(buf); } catch (NoSuchAlgorithmException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } User u=new User(); u.setUsername(username); u.setName(name); u.setPwd(Pwd); u.setSex(sex); EmployeeDao dao=(EmployeeDao) DAOFactory.getInstance("EmployeeDao"); try { dao.regist(u); request.getRequestDispatcher("login.jsp").forward(request, response); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
------解决方案--------------------
密码类型的 一般用11楼所说的那样
------解决方案--------------------
------解决方案--------------------
可以用DES或者TDES等等,都行,
------解决方案--------------------
简单的例子把字符与密钥在例子里是'*'做^运算,就能实现一个简单的加密解密了,当然还可以加一些换位或者加减
- Java code
public static void md5(String src) { char psw = '*'; char srcArray[] = src.toCharArray(); System.out.print("加密后:"); for (int i = 0; i < src.length(); i++) { srcArray[i] = (char) (srcArray[i] ^ psw); System.out.print(srcArray[i]); } System.out.println(""); System.out.print("加密前:"); for (int i = 0; i < src.length(); i++) { srcArray[i] = (char) (srcArray[i] ^ psw); System.out.print(srcArray[i]); } System.out.println(); }