У меня проблема с использованием шифрования 3DES в приложении для iPhone. У меня есть 9-байтовое сообщение, которое нужно зашифровать. Когда я использую kCCOptionECBMode
, первый 8-байтовый блок зашифрован правильно (у меня есть образец результата, созданный сервером). Как я могу зашифровать последний байт? Когда я использую kCCOptionPKCS7Padding
или kCCOptionECBMode| kCCOptionPKCS7Padding
, он дает неправильный результат со статусом kCCBufferTooSmall
. Я просмотрел несколько сообщений, связанных с шифрованием 3DES на SO, но мне это не помогло.
ccStatus = CCCrypt(kCCEncrypt,
kCCAlgorithm3DES,
kCCOptionECBMode,
vkey,
kCCKeySize3DES,
vinitVec,
vplainText,
plainTextBufferSize,
(void *)bufferPtr,
[data length],
&movedBytes);