Есть класс шифрования/дешифрования строки.
функция шифрования:
public static String DESEncrypt(String datasource, String password) {
String result = datasource;
if (datasource != null) {
try {
if (!datasource.isEmpty()) {
SecretKey securekey = SecretKeyFactory.getInstance("DES").generateSecret(new DESKeySpec(password.substring(0, 8).getBytes(Hex.DEFAULT_CHARSET_NAME)));
AlgorithmParameterSpec iv = new IvParameterSpec(ivkey);
Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
cipher.init(1, securekey, iv);
result = Base64.encodeToString(cipher.doFinal(datasource.getBytes(Hex.DEFAULT_CHARSET_NAME)), 0);
}
} catch (Throwable e) {
Log.i("@error", e.getMessage());
}
}
return result;
}
функция дешифрования:
public static String DESDecrypt(String src, String password) {
String result = src;
if (src == null) {
return result;
}
if (src.isEmpty()) {
return result;
}
byte[] item = password.substring(0, 8).getBytes();
try {
DESKeySpec item2 = new DESKeySpec(item);
SecretKey securekey = SecretKeyFactory.getInstance("DES").generateSecret(item2);
} catch (InvalidKeyException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
}
return password.substring(0, 8);
/*AlgorithmParameterSpec iv = new IvParameterSpec(ivkey);
Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
cipher.init(2, securekey, iv);
return new String(cipher.doFinal(Base64.getDecoder().decode(src)));*/
}
интересует меня функция дешифрования, при ее запуске я вижу ошибку на строке
SecretKey securekey = SecretKeyFactory.getInstance("DES").generateSecret(item2);
господа знатоки, подскажите, что я делаю не правильно?
я специалист в области php,mysql.
Рискну предположить, что вам требуется установить расширение для работы с криптографией JCE скачать документация
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Необходимо создать 100 объектов с параметром день рожденияЯ так понимаю нужно использовать класс Date, но я не понимаю как использовать его
Есть игра, для которой нужен мультиплеерДля мультиплеера необходимо чтобы передовались лишь координаты одного из объектов
Как сделать что бы работал прогресс бар в модальном окне? Ибо пока не закрою диалог, код дальше не выполняетсяСделал такой пример: