java使用AES256解密
生活随笔
收集整理的這篇文章主要介紹了
java使用AES256解密
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
網(wǎng)上關(guān)于java用AES加密解密的文章有很多,我這里只用到解密(加密是服務(wù)器那邊做^_^),所以更簡潔一些:
public class AES256Utils {private static final String KEY = "xxxx";//從服務(wù)器要的密鑰public static final String CIPHER_ALGORITHM = "AES/ECB/PKCS7Padding";/*** 解密* @param content* 待解密內(nèi)容* @return*/public static byte[] decrypt(byte[] data) throws Exception {Key k = toKey(KEY.getBytes());Cipher cipher = Cipher.getInstance(CIPHER_ALGORITHM);cipher.init(Cipher.DECRYPT_MODE, k);return cipher.doFinal(data);}private static Key toKey(byte[] key) throws Exception {SecretKey secretKey = new SecretKeySpec(key, "AES");return secretKey;} }這里有一點(diǎn)要注意,網(wǎng)上都要添加一個(gè)類似bcprov-jdk的庫和兩個(gè)policy文件,那是加密時(shí)候用的,解密不需要他們。
還有一點(diǎn)注意,一般服務(wù)器返回來的加密后數(shù)據(jù)都是要Base64編碼的(否則容易丟失數(shù)據(jù),拋出異常:javax.crypto.IllegalBlockSizeException: last block incomplete in decryption)。所以要用Base64解碼。
轉(zhuǎn)載于:https://www.cnblogs.com/coding-way/p/3682813.html
總結(jié)
以上是生活随笔為你收集整理的java使用AES256解密的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ 3461 kmp 应用
- 下一篇: DFT,DTFT,DFS,FFT区别