Защита конфиденциальной информации в исходном коде Objective C - PullRequest
2 голосов
/ 09 марта 2012

Если у меня есть переменная пароля, которая используется для удаленной аутентификации SSL, безопасно ли ее хранить в исходном коде?

, например

NSString * password =  @"password";

Есть ли лучший способ?

Обновление : Извините за путаницу, я не храню пароль пользователя, вместо этого я храню пароль, который используется для вызова нашего собственного бэкэнда, все приложение будет использовать тот же пароль.

Ответы [ 3 ]

2 голосов
/ 09 марта 2012

Мой новый ответ:

Старайтесь не использовать статические пароли для доступа к фону, точка.Что произойдет, если кто-то, кто вам не нужен, определит, что это за пароль.Почему бы не использовать имена пользователей и пароли?

Вы также можете рассмотреть возможность использования открытого ключа или встроенного сертификата, чтобы разрешить только доступ вашего приложения к внутренним серверам.

Мой оригиналответ:

Звучит так, будто вы хотите познакомиться с цепочкой для ключей.

Вот учебник, в котором об этом говорится:

http://maniacdev.com/2011/07/tutorial-how-to-use-the-ios-keychain-to-store-names-and-passwords/

И вот связанный вопрос, который говорит о безопасности Keychain под iOS .

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

1 голос
/ 09 марта 2012

Любой текст, содержащийся в вашем приложении, легко извлекается. Реального пути к этому нет - с помощью инструмента strings каждый может видеть любой текстовый контент, статически встроенный в ваше приложение. Однако есть несколько способов обойти это, в частности, если вы разбьете свою строку на несколько статических строк и объедините их в правильном порядке, будет намного сложнее восстановить пароль, содержащийся в вашем приложении.

Я рекомендую вам взглянуть на аналогичный вопрос ( Насколько безопасна информация, содержащаяся в скомпилированном коде приложения iPhone * ) и, в частности, на мой ответ на этот вопрос, чтобы получить более подробное объяснение того, что Я имею в виду. (Комментарий Нимрода по этому вопросу также интересен.)

0 голосов
/ 09 марта 2012

НЕТ!

создайте свое приложение. Перейдите к терминалу и введите strings, а затем перетащите свой исполняемый файл в терминал и нажмите клавишу возврата ... Вы увидите ваш пароль secret в текстовом формате:)

Вы должны хранить его хэш.

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