Как iOS хранит постоянные данные с шифрованием? - PullRequest
1 голос
/ 22 сентября 2011

Может ли приложение iPhone зашифровать сохраненные данные? Так что даже пользователь с взломанным устройством iOS не может получить доступ к файлу. Например, игровой центр может синхронизироваться с локальными данными, вы не хотите, чтобы пользователь манипулировал счетами. Вы также не хотите, чтобы ваш IAP был обойден.

Есть ли простой способ зашифровать ваши данные перед записью на устройство?

Может быть, мои вопросы не очень понятны. На самом деле они:

  1. Когда я использую такие вещи, как: [массив writeToFile: путь атомарно: ДА]; существует ли какое-либо автоматическое шифрование, обеспечивающее правильный доступ к файлу только моему приложению?

  2. Если нет, то как проще всего это сделать?

PS: теперь я обнаружил, что NSData может выполнять эту работу, но для флага NSDataWritingFileProtectionComplete требуется #if __IPHONE_4_0 <= __IPHONE_OS_VERSION_MAX_ALLOWED. Интересно, что происходит на неподдерживаемых устройствах?

Ответы [ 2 ]

2 голосов
/ 22 сентября 2011

Подробнее о шифровании iOS см. В ответе @ GrahamLee на на этот вопрос и на другие вопросы с тегами iOS на security.stackexchange.com .

Основная сводка -на основе только элементов управления iPhone:

  • Если у кого-то есть устройство, и оно не заблокировано, они могут получить доступ ко всем данным
  • Если у кого-то есть устройство и оно заблокировано, ониможет получить большую часть данных и, возможно, все (могут применяться некоторые исключения)

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

Вам необходимо определить ценность таких методов управления цифровыми правами и решить, имеют ли они смысл в этом сценарии.

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