Сигнатура одноразового криптографического метода CCCrypt
такова (из CommonCryptor.h
):
CCCryptorStatus CCCrypt(
CCOperation op, /* kCCEncrypt, etc. */
CCAlgorithm alg, /* kCCAlgorithmAES128, etc. */
CCOptions options, /* kCCOptionPKCS7Padding, etc. */
const void *key,
size_t keyLength,
const void *iv, /* optional initialization vector */
const void *dataIn, /* optional per op and alg */
size_t dataInLength,
void *dataOut, /* data RETURNED here */
size_t dataOutAvailable,
size_t *dataOutMoved)
Кажется, ни один из параметров не принимает значение CCMode
(может быть, незаметно, поскольку все перечисления являются целыми числами?). Я пробовал комбинировать его с параметром CCOptions
, но безрезультатно; два перечисления не являются вариантами и не сочетаются однозначно.
Там это явно не задокументировано, но из того, что я нахожу в Интернете, я предполагаю, что режим, используемый с kCCAlgorithmAES
, - это CBC.
Как я могу изменить режим AES, который использует CCCrypt
?