通过Base64对数据进行加密后,无需考虑padding的问题。
//KeyGenerator kgen = KeyGenerator.getInstance("AES");//kgen.init(128, new SecureRandom(descrypt_key.getBytes()));//SecretKey secretKey = kgen.generateKey();SecretKey secretKey = new SecretKeySpec(descrypt_key.getBytes(), "AES");
如果使用KeyGenerator的方法获取key,那么PC端和Android端因为SecureRandom的实现机制不一样,所以会造成PC端能解密,但Android端不能正确解密的问题。只需要在加密和解密时,直接获取SecretKey即可解决该问题。