欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

关于MySQL加密详解

程序员文章站 2022-03-16 19:29:45
...
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.executeQuery();
        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;

以上就是关于MySQL加密详解的详细内容,更多请关注其它相关文章!