Зашифруйте и расшифруйте пароль, используя target-c - PullRequest
2 голосов
/ 06 января 2010

Как зашифровать строку nsstring и сохранить ее в файле, и как ее расшифровать.

Пожалуйста, предложите мне Ват АПИ, я должен использовать ...

Ответы [ 5 ]

1 голос
/ 31 января 2010

Это функция, которую я использовал для шифрованияg.

DES_cfb64_encrypt ((без знака char *) pchInputData, (без знака char *) pchOutCipher, размер, расписание, & ParityKey, & no, DES_ENCRYPT);

Мне пришлось преобразовать это в base64, чтобы я мог сохранить его в файле.
pstrResult = Base64encoding (size, (unsigned char *) pchOutCipher);

0 голосов
/ 06 января 2010

Если вы храните пароль, сначала решите, нужно ли вам повторно использовать пароль или нужно просто проверить, что пользователь ввел правильный пароль.

Если вам просто нужно убедиться, что пользователь ввел правильный пароль, сохраните пароль с помощью хеша и сравните хеш ввода пользователя с хешем, который вы сохранили. Если оба хэша равны, то пользователь, вероятно, набрал его правильно. См. Больше информации о хэшах в Википедии .

Если вам необходимо повторно использовать пароль (т. Е. Для проверки подлинности с помощью других служб, таких как подключение к интернет-службе), используйте Служба связки ключей Apple . Если вы нацелены на iPhone, проверьте этот связанный документ.

0 голосов
/ 06 января 2010

Если вам нужна поддержка только 10,5 или выше, вы можете использовать CommonCryptor API.Первый комментарий к этому посту показывает пример категории для шифрования / дешифрования NSData's:

http://iphonedevelopment.blogspot.com/2009/02/strong-encryption-for-cocoa-cocoa-touch.html

0 голосов
/ 06 января 2010

Хотя это и не вызов API, вы можете реализовать простой XOR-шифр. Это быстро и просто реализовать и в зависимости от характеристик вашей строки (то есть, если она имеет фиксированную длину) может быть очень безопасным. Если у вас есть строка переменной длины, шифрование XOR может быть недостаточно безопасным в зависимости от ваших потребностей. Взгляните на статью Википедии .

0 голосов
/ 06 января 2010

Вы можете использовать gpgme

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...