В моей серверной стороне они создали зашифрованное сообщение с использованием алгоритма AES с 16 ключа байт с этим фрагментом кодаAES Java шифрование 16 байт ключ дешифрования с Objective-C
Key: h7Ui63Mzqj61G87j
public static String encrypt(String data, byte[] secretKey) throws Exception {
Key key = generateKey(secretKey);
Cipher c = Cipher.getInstance(ALGORITHM);
c.init(Cipher.ENCRYPT_MODE, key);
byte[] encVal = c.doFinal(data.getBytes());
String encryptedValue = new BASE64Encoder().encode(encVal);
if (logger.isDebugEnabled()) {
logger.debug(String.format("DataToEncrypt: %s, encryptedValue: %s", data, encryptedValue));
}
return encryptedValue;
}
Но я не могу расшифровать сообщение с помощью того же ключа, используя алгоритм AES.
Я упоминал, что многие ссылки и блоги ничего не помогли мне, может ли кто-нибудь помочь мне решить эту проблему.
Ваш ключ длиной 16 символов. Как преобразовать его в 32 байта? – Codo
Итак, теперь у нас есть 16 * символов * против 16 * байтов *. Как вы конвертируете из символов в байты? – Codo
И, пожалуйста, покажите код Objective-C, который у вас есть. И скажите нам, что означает «я не могу расшифровать сообщение». Разве это не компилируется? Это крушение? Выдает ли он неправильный результат? Какой вклад, каков ожидаемый результат и каков эффективный результат? – Codo