Después de varias horas de buscar y usar fs_usage
para rastrear archivos, llegué a la conclusión de que los certificados se almacenan en el llavero. (que en retrospectiva es un momento DUH).
Aquí están los archivos que iTunes lee al iniciar y durante una sincronización en mi mac.
18:38:16.776 stat64 /Library/Keychains/System.keychain 0.000010 iTunes
18:38:16.776 open F=5 (R_____) /Users/me/Library/Keychains/login.keychain 0.000007 iTunes
18:38:16.801 open F=5 (R_____) /Library/Keychains/System.keychain 0.000016 iTunes
18:38:26.013 open F=48 (R_____) /System/Library/Keychains/SystemRootCertificates.keychain 0.000024 iTunes
No he podido descubrir qué claves específicas o cadena de claves se necesitan. El llavero en mi carpeta de inicio parece no ser necesario ya que otras cuentas de usuario en mi mac ven el contenido de mi iPhone bloqueado incluso antes de que se inicie iTunes. No está claro si usbmuxd
u otro daemon de bajo nivel está leyendo un certificado de nivel de sistema o la API para acceder a los datos de iOS se basa en una biblioteca común para el acceso al omisión del bloqueo del código de acceso en iOS 4.
Está claro que el código de acceso de iOS no se protegerá de alguien que pueda acceder a los archivos en su disco duro (y tiene el conocimiento detallado que aún no está claro qué certificado o archivo tiene las claves almacenadas)
FileVault no lo protegerá, ya que el certificado parece estar almacenado fuera de la carpeta del usuario.