Ответ 1
Используйте Apple Keychain.
+ (NSString *) getPasswordForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;
+ (void) storeUsername: (NSString *) username andPassword: (NSString *) password forServiceName: (NSString *) serviceName updateExisting: (BOOL) updateExisting error: (NSError **) error;
Первый метод позволяет запросить пароль, связанный с существующее имя пользователя для определенного имя службы (Ive только что использовал имя моего приложения в качестве имени службы). второй позволяет вам хранить имя пользователя/пароль/имя службы, и позволяет указать, не соответствующий элемент связки ключей должны быть обновлены с предоставленным пароль, если найденный который соответствует имени пользователя и сервису имя пара. Последний параметр каждого является ссылкой на объект NSError который будет содержать ошибку нижнего уровня информация, если что-то пойдет не так (и быть нулевым, если это не так).
Для получения дополнительной информации см. его блог