Android中的AES加密解密算法是否使用NOP?
我的代码面临这个问题Android中的AES加密解密算法是否使用NOP?,android,Android,我的代码面临这个问题 public byte[] encryptString(String unencryptedData, String encryptionKey) throws Exception { Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding", "SunJCE"); SecretKeySpec key = new SecretKeySpec(encryptionKey.getBytes("UTF-8"),
public byte[] encryptString(String unencryptedData, String encryptionKey) throws Exception {
Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding", "SunJCE");
SecretKeySpec key = new SecretKeySpec(encryptionKey.getBytes("UTF-8"), "AES"); //256-AES, 512-AES
cipher.init(Cipher.ENCRYPT_MODE, key,new IvParameterSpec(encryptionKey.getBytes("UTF-8")));
return cipher.doFinal(unencryptedData.getBytes("UTF-8"));
}
您可以使用此代码查看哪些提供程序和算法组合可用:
for (Provider p : Security.getProviders()) {
Log.e(TAG, "Service Name: " + p.getName()));
for (Provider.Service s : p.getServices()) {
Log.e(TAG, " Algorithm: " + s.getAlgorithm()));
}
}
如果要加密的数据始终是块大小的倍数(AES为16字节),则不需要填充。问题是什么?但是,我已对数据进行了加密,但无法将字节[]转换为hexstring,请提供相应的代码。。我需要安卓代码:D