0

на Android, я могу хранить файлы в довольно защищенный файл, используя Context.openfileoutput. он будет сохранен на внутреннем диске, специфичном для моего приложения, недоступном для других приложений, и единственный способ получить это - подключить устройство отладчика/rooting. это не 100% взломать, но это достаточно хорошо.Как хранить приватный файл на iOS безопасно

Это что-то, что существует на iOS?

Я читал https://developer.apple.com/library/content/qa/qa1699/_index.html, но разве это безопасно? как я предполагаю, он выглядит как-то

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES); 
          NSString *librariesDirectory = [paths objectAtIndex:0]; 
          NSLog(@"%@", librariesDirectory); 
          NSString *filePath = [NSString stringWithFormat:@"%@/%@/%@", librariesDirectory,@"Private", @"internal_image.jpg"]; 

бы быть что-то, что

  • другие приложения не могут получить доступ к
  • не делает резервное копирование на ICloud
  • этот файл легко видеть приложение но НЕ конечный пользователь

?

+0

Да. На самом деле iOS работает так. Каждое приложение имеет собственную песочницу. Есть 2 общих места для хранения вещей - папка Doc и Temp (эти два находятся в песочнице приложений). – GeneCode

+0

Примечание. Несмотря на то, что эти файлы хранятся «скрытыми» от обычного пользователя, не происходит остановки, когда кто-либо видит эти файлы в поврежденном устройстве. – GeneCode

ответ

1

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

+0

есть ли место, где я могу вставить его так, чтобы он не проходил резервное копирование iCloud? –

Смежные вопросы