шифрование пароля в приложениях для iphone - PullRequest
8 голосов
/ 10 октября 2008

Мне нужно сохранить пароль пользователя в приложении iphone.

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

Я не хочу, чтобы мое приложение было ограничено только США, но я также не хочу хранить или отправлять пароли через сеть в виде открытого текста.

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

Ответы [ 3 ]

8 голосов
/ 30 октября 2008

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

Сказав это, я не юрист, я рекомендую обратиться к одному, если вы беспокоитесь об этом. Никакие советы других программистов не имеют особого отношения к юридическим вопросам.

5 голосов
/ 10 октября 2008

Похоже, что поставляемую функцию crypt () можно использовать для паролей:

Эта библиотека (FreeSec 1.0) была разработана за пределами Соединенных Штатов Америки в качестве необремененной замены библиотеки шифрования U.S.only libcrypt. Программы, связанные с интерфейсом crypt (), можно экспортировать из США только в том случае, если они используют crypt () исключительно для целей аутентификации и не используют другие интерфейсы программистов, перечисленные выше. Особое внимание было уделено библиотеке, чтобы программы, использующие только интерфейс crypt (), не включали другие компоненты.

(из документации по iphone для crypt (3))

5 голосов
/ 10 октября 2008

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

Для безопасной связи вы должны использовать SSL, который, вероятно, находится в библиотеке, которая уже находится на телефоне. Если вы используете библиотеку, которая является частью операционной системы телефона, я не думаю, что это означает, что ваше приложение «содержит шифрование».

Конечно, я не юрист. Кто знает - закон может считать «свинью латынь» действительной технологией шифрования.

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