关于MySQL加密详解

MySQL字段加密和解密

  1.   加密:

    aes_encrypt('admin','key')

    2.  解密:

  aes_decrypt(password,'key')

2.双向加密      通过密钥去加密,解密的时候的只有知道这个密钥的人来解密

      加密:encode()

      解密:decode()

           encode('123456' 'adfdgfdhggfh');

           decode(password,'adfdgfdhggfh');

3.PASSWORD('123456')

    password加密是不可逆转的

4.MD5('123456')

//UserDao 
public User login(Connection con,User user) throws Exception{
        User resultUser=null;
        String sql="select userName,AES_DECRYPT(password,'key') password from t_user where userName=? and AES_DECRYPT(PASSWORD,'key')=?";
        PreparedStatement pstmt=con.prepareStatement(sql);
        pstmt.setString(1, user.getUserName());
        pstmt.setString(2, user.getPassword());
        ResultSet rs=pstmt.exec

uteQuery(); if(rs.next()){ resultUser=new User(); resultUser.setUserName(rs.getString(1)); resultUser.setPassword(rs.getString(2)); System.out.println(resultUser.getPassword()+"^^^^^"); } return resultUser; } } //sql语句 insert into t_user (userName,password) values('admin',AES_ENCRYPT('123456','key')); select userName,AES_DECRYPT(password,'key')password from t_user;