Правильно ли установлены переменные pBytesInput
и pBytesKey
? На данный момент у вас есть unsigned char* pBytesInput = (unsigned char*)[stringKey bytes];
(то есть, ввод - это «ключ»), а pBytesKey
- это идентификатор устройства. Это кажется странным.
Также будьте осторожны, используя кодировку UTF-8. UTF-8 использует старший бит любого байта в строке, чтобы указать «продолжение» многобайтового символа в следующем байте. Ваша кодировка может создать недействительный код UTF-8, установив старший бит последнего байта в шифровании.
Более того, вам придется сказать, что такое "неправильный результат".