您的位置:首页 > 其它

加密知识

2013-10-20 16:24 92 查看
加密知识:

类MD5andKL.java的实现描述:MD5加码-32位

1.private static byte[] getMD5(String input) {
		try {
			byte[] bytesOfMessage = input.getBytes("UTF-8");
			MessageDigest md = MessageDigest.getInstance("MD5");
			return md.digest(bytesOfMessage);
		} catch (Exception e) {
			return null;
		}
	}
2.ecipher.init(Cipher.ENCRYPT_MODE, key, paramSpec);
	init(int opmode, Key key, AlgorithmParameterSpec params)
           用密钥和一组算法参数初始化此 cipher。
3.   setupCrypto(SecretKey key)        用密钥和一组算法参数初始化此 加密的和解密的cipher。
4.SecretKeySpec skey = new SecretKeySpec(getMD5(key), "AES");
		this.setupCrypto(skey);
5.byte[] ciphertext = ecipher.doFinal(plaintext.getBytes("UTF-8"));//按单部分操作加密或解密数据,或者结束一个多部分操作。
			return base64Encoder.encode(ciphertext);
					 
6.	private String tryEncrypt(String plaintext)
			throws IllegalBlockSizeException, UnsupportedEncodingException {
		try {
			byte[] ciphertext = ecipher.doFinal(plaintext.getBytes("UTF-8"));
			return base64Encoder.encode(ciphertext);
		} catch (BadPaddingException e) {
			logger.error("encrypt error for Key:" + plaintext, e);
			return null;
		}
	}			
7.	private String tryDecrypt(String base64CipherText) throws IOException,
			IllegalBlockSizeException {
		byte[] cipherText;
		try {
			cipherText = base64Decoder.decodeBuffer(base64CipherText);
			return decrypt(cipherText);
		} catch (BadPaddingException e) {
			logger.error("decrypt error for Key:" + base64CipherText, e);
			return null;
		}
	}   

8.ConfigurableVariable.xml
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: