¿Alguien me puede explicar la protección de datos y el encryption de iPhone?

Revisé completamente mi pregunta porque encontré dos fonts excelentes sobre la protección de datos de iOS. El primero es: Episodio 209 de los videos WWDC 2010 de Apple "Cómo proteger los datos de la aplicación" y el segundo es http://anthonyvance.com/blog/forensics/ios4_data_protection/ .

Esto solo deja unos pocos abre sobre la protección de datos:

  • El llavero permite definir una class "disponible cuando está desbloqueado, solo este dispositivo", lo que impide que un logging de llavero se transfiera a otro dispositivo mediante copy de security / restauración. A mi entender, no hay nada similar para los files, ¿o sí? ¿Cómo puedo evitar que se restauren los datos de ARCHIVO en otro dispositivo?
  • NSData permite almacenar files con protección y NSFileManager permite cambiar la class de security de un file existente. En mi caso, los files son descargados por un service web y me pregunto si hay algunas desventajas si primero guardo el file sin cifrar y el uso NSFileManager para cambiar la class.
  • Si el usuario no especifica un PIN o una contraseña, no existe una protección real, ¿correcto?
  • ¿Hay testings de que el contenido de un dispositivo protegido por PIN / contraseña protegido con "proteger siempre" se ha pirateado con éxito?
  • Mi dispositivo contiene files que se almacenan en formatting encryption. Si ahora hago una copy de security de mi dispositivo en iTunes y no selecciono cifrar y proteger con contraseña esa copy de security, ¿están mis files respaldados todavía encriptados o están desencryptions en la copy de security, lo que significa que iTunes los descifraría antes de hacer una copy de security?

  1. Debes hacer cumplir esto tú mismo, ya que a iTunes no le importa lo que restaura. Un buen enfoque puede ser verificar el UDID del dispositivo en cada lanzamiento de la aplicación y, si no coincide con el que se guardó con los datos, descártelos .
    Tenga en count que, con el UDID original y un dispositivo con jailbreak, puede hacer que la aplicación crea que todavía está usando el iDevice inicial y, por lo tanto, evite esta medida de security .
  2. Debido al entorno de espacio aislado del sistema iOS y debido al muy poco time que el file se almacena sin cifrar, almacenarlos de esta manera es bastante seguro.
  3. Los datos siguen encriptados con la key del dispositivo. Este enfoque es less seguro que con un PIN porque se basa únicamente en una key que está disponible todo el time en el dispositivo. Se puede considerar suficiente security solo en un dispositivo ininterrumpido, ya que en un jailbreak puede leer la key desde la memory del dispositivo.
  4. iTunes copy de security del file ya que se almacenan en el dispositivo (por lo que si están originalmente encriptados, también están encriptados en la copy de security). Si también se habilita el encryption de copy de security, los files se cifran una vez más antes de almacenarlos en el disco duro de la computadora.

La respuesta de Mr Magic ya está bastante cerca. Me gustan especialmente sus ideas en el punto uno para evitar que se restauren los files.

He estado buscando en la Web de principio a fin y recopilé información de varias fonts y pude responder todas las abre. El resultado se puede encontrar en mi blog en:

http://www.wildsau.net/post.aspx?id=1b9cc650-9658-4783-827d-ea90b176acc4

También agregué dos soluciones al problema "restaurar este dispositivo solamente", inspirado por MrMagic. Con suerte, ayudará a otros si necesitan información sobre la security de iOS.

MrMagic dijo que "Los datos aún están encriptados y la security no está completamente comprometida, porque la key de encryption se almacena en un chip criptográfico que realiza todas las operaciones dentro de él (básicamente, la key nunca sale del chip)".

De dónde sacaste esa información? He estado buscando información sobre las keys del dispositivo y cómo funcionan, pero no tuvieron éxito. ¿Podrías proporcionar alguna información adicional sobre ellos?