MD5和SHA256加密

MD5和SHA256加密

  • MD5简介

    • MD5加密较为可靠,需要引入commons-codec-1.9.jar
    • MD5加密不可逆,也就是加密后不能再根据加密的秘钥去解密,网上MD5解密实际上是暴力破解。如果需要可逆的话,请选择DES、AES、异或、凯撒、RSA等。
    • MD5加密可以实现任何对象加密,这就决定了传入参数类型为byte数组,如果为int或者其他类型,就不能满足上述要求,任何对象都可以被转成byte数组,为了保持通用性而这样设计。
    • 字符串到十六进制串
  • MD5代码示例

    //导入commons-codec-1.9包
    public String md5Encode(byte [] input){
            return DigestUtils.md5Hex(input);
        }
    
    ///////////////////////////////////
       SecurityUtil securityUtil =new SecurityUtil();
           String str = "hello";
           str = securityUtil.md5Encode(str.getBytes());
            System.out.println(str);
    //////////////////////////////////
    5d41402abc4b2a76b9719d911017c592
    
  • SHA256简介

    • SHA256较为可靠,需要引入commons-codec-1.9.jar
    • SHA256加密不可逆
    • SHA256加密可以实现任何对象加密,这就决定了传入参数类型为byte数组,如果为int或者其他类型,就不能满足上述要求,任何对象都可以被转成byte数组,为了保持通用性而这样设计。
    • 字符串到十六进制
  • SHA256代码示例

     public String sha256Encode(byte[] input){
            return DigestUtils.sha256Hex(input);
        }
    /////////////////////////////////////////////////
      SecurityUtil securityUtil =new SecurityUtil();
           String str = "hello";
           str = securityUtil.sha256Encode(str.getBytes());
            System.out.println(str);
    ////////////////////////////////////////////////
    2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
    

你可能感兴趣的:(密码学)