读书人

java处置url加解密

发布时间: 2012-09-17 12:06:51 作者: rapoo

java处理url加解密
1.加密

MessageDigest md = MessageDigest.getInstance("MD5");byte[] byteKeyMd5 = md.digest(encryptKey.getBytes());byte[] byteKey = new byte[24];System.arraycopy(byteKeyMd5, 0, byteKey, 0, 16); System.arraycopy(byteKeyMd5, 0, byteKey, 16, 8); Key deskey = null;DESedeKeySpec spec = new DESedeKeySpec(byteKey);SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede");deskey = keyfactory.generateSecret(spec);Cipher cipher = Cipher.getInstance("DESede/ECB/PKCS5Padding");cipher.init(Cipher.ENCRYPT_MODE, deskey);byte[] encryptedBytes = cipher.doFinal(source.getBytes("UTF-8"));BASE64Encoder encoder = new BASE64Encoder();encryptedString = encoder.encode(encryptedBytes);


2.解密
byte[] decodedBytes;BASE64Decoder decoder = new BASE64Decoder();decodedBytes = decoder.decodeBuffer(cipherText);MessageDigest md = MessageDigest.getInstance("MD5");byte[] byteKeyMd5 = md.digest(decryptKey.getBytes());byte[] byteKey = new byte[24];System.arraycopy(byteKeyMd5, 0, byteKey, 0, 16); System.arraycopy(byteKeyMd5, 0, byteKey, 16, 8); Key deskey = null;DESedeKeySpec spec = new DESedeKeySpec(byteKey);SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede");deskey = keyfactory.generateSecret(spec);Cipher cipher = Cipher.getInstance("DESede/ECB/PKCS5Padding");cipher.init(Cipher.DECRYPT_MODE, deskey);byte[] plainTextBytes = cipher.doFinal(decodedBytes);plainText = new String(plainTextBytes);

读书人网 >编程

热点推荐