zoukankan      html  css  js  c++  java
  • base64、sha256、MD5加密

    异或可逆加密操作:A对B异或结果C;A对C异或结果为A;二次异或是本身
    package en_decode; public class test { public static String xor(String input) { char[]chars=input.toCharArray(); for(int i=0;i<chars.length;i++) { chars[i]=(char) (chars[i]^3000); //^异或 } String new1=new String(chars); return new1; } public static void main(String[] args) { // TODO Auto-generated method stub String aString="abc"; aString=xor(aString); System.out.println(aString); aString=xor(aString); System.out.println(aString); } }

      

    package en_decode;
    
    import org.apache.commons.codec.digest.DigestUtils;
    
    public class test {
    //	public static String xor(String input) {
    //		char[]chars=input.toCharArray();
    //		for(int i=0;i<chars.length;i++) {
    //			chars[i]=(char) (chars[i]^3000); //^异或
    //		}
    //		String new1=new String(chars);
    //		return new1;
    //	}
    //	
    	public static String MD5encode(byte[] input) {//速度快,不可逆 安全性低
    		
    		return DigestUtils.md5Hex(input);
    		
    	}
    	public static String SHAencode(byte[] input) {//速度慢 不可逆 安全性高
    		
    		return DigestUtils.sha256Hex(input);
    		
    	}
    	public static void main(String[] args) {
    //		// TODO Auto-generated method stub
    //		String aString="abc";
    //		aString=xor(aString);
    //		System.out.println(aString);
    //		
    //		aString=xor(aString);
    //		System.out.println(aString);
    		String gg="hello";
    		String t1=MD5encode(gg.getBytes());
    		System.out.println(t1);
    
    		String t2=SHAencode(gg.getBytes());
    		System.out.println(t2);
    	}
    
    }
    

      

    package en_decode;
    import org.apache.commons.codec.binary.Base64;
    public class test {
    
        public static byte[] decode( String gg) {  
            return Base64.decodeBase64(gg);  
        }  
        public static String encode(byte[] bytes) {  
            return new String(Base64.encodeBase64(bytes));  
        }  
    	public static void main(String[] args) {
    
    		String gg="hello";
    		gg=encode(gg.getBytes());
    		System.out.println(gg);
    		byte[]hh=decode(gg);
    		System.out.println(new String(hh));
    		
    	}
    
    
    }
    

      导入包:commons-codec-1.10

  • 相关阅读:
    Zju1876 Edit Step Ladders
    Candy糖果盒
    哈希
    最长上升子序列 nlogn
    电费结算
    【luoguP5656】二元一次不定方程(gcd,exgcd,裴蜀定理,不定方程初步)
    DP技巧
    高精
    【CSP烤前注意】
    [Jsoi2015] 种花
  • 原文地址:https://www.cnblogs.com/qinyios/p/10390791.html
Copyright © 2011-2022 走看看