У меня есть приложение для iPhone, которое шифрует введенную NSString с использованием CCCrypt (AES256) и открытого текстового ключа. Строка и ключ передаются методу шифрования, который возвращает объект NSData.
Запрос [описание данных], где "данные" являются зашифрованными строковыми данными, дает NSString как: "< 0b368353 a707e7de 3eee5992 ee69827e e3603dc2 b0dbbc0b 861ca87d f39ce72a > ", но когда я пытаюсь преобразовать это в NSString, я получаю "( нуль)".
Мне нужно вернуть пользователю NSString, который можно использовать для дешифрования обратно к исходной строке с использованием того же открытого текстового ключа. Если свойство "description" объекта NSData может возвращать строку, можно ли каким-либо образом создать NSString из объекта NSData без получения "(null)"?
ОБНОВЛЕНИЕ: благодаря Куинну, который предлагает использовать кодировку Base64 для создания запутанной строки. Из того, что я понимаю, кодировка Base64 не просто заменяет символы, но обмен символами зависит от позиции, так что отлично.
Моя единственная проблема заключается в том, что я хочу иметь возможность шифровать сообщение с помощью "passphrase" и требовать, чтобы идентичная кодовая фраза вводилась, когда нужно было декодировать запутанную строку - может ли кто-нибудь предложить способы ее реализации?