J'ai fait quelques tests et je peux offrir une réponse (espérons-le) faisant autorité.
Réponse courte: les versions sont stockées sur le même disque (ou image disque) que le fichier réel, de sorte que les versions ne doivent pas divulguer d'informations en dehors de votre image cryptée. Mais il pourrait y avoir une autre fuite, voir ci-dessous.
Réponse longue: Versions crée un dossier invisible en haut de chaque volume, nommé ".DocumentRevisions-V100" avec une structure interne comme celle-ci:
.DocumentRevisions-V100
.cs
ChunkStorage (this is presumably used to store chunks of large files that didn't entirely change between versions)
AllUIDs (this is only created on disks that have permissions ignored)
ChunkTemp
db-v1
db.sqlite (this is the primary index of document IDs, etc)
PerUID (this is only created on disks that have ownership respected)
501 (documents created/owned by user #501)
502 (etc...)
staging (???)
Pour plus d'informations sur l'index sqlite et le démon d'arrière-plan qui en assure l'accès, lisez l'excellente critique de John Siracusa sur ars technica .
Les versions des documents elles-mêmes sont stockées dans des sous-répertoires dans AllUIDs ou PerUID / youruserid. Sous cela, chaque document versionné obtient son propre sous-répertoire, numéroté à partir de 1. Sous c'est un dossier unique nommé "com.apple.documentVersions", et sous cela, chaque révision est stockée en tant que document séparé (sauf s'il est divisé en morceaux - - Je n'ai pas testé de gros documents) nommés avec un UUID et une extension de type. Par exemple, si je (utilisateur # 501) édite un document rtf sur mon volume de démarrage et enregistre plusieurs révisions, elles peuvent être stockées comme:
/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/0787B7C3-DE11-4065-9FD9-61870212011D.rtf
/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/D533CF36-0D49-4910-B0EB-C92395C05726.rtf
Si j'ai ensuite ouvert un autre fichier rtf et enregistré une version de celui-ci, il pourrait être nommé:
/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf
Si je l'ai enregistré sur mon image SecretDocs (montée avec la propriété ignorée), les versions seraient stockées comme:
/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf
BTW, les autorisations sur les fichiers de version semblent être clonées à partir des fichiers d'origine. Les autorisations sur les dossiers qui les entourent ont tendance à autoriser l'exécution uniquement (c'est-à-dire que vous ne pouvez pas voir les noms de fichiers, mais si vous connaissez le nom du fichier, vous pouvez y accéder). Par exemple, PerUID / 501 est défini pour autoriser l'exécution uniquement pour l'utilisateur 501, aucun accès pour quiconque. Le dossier db-v1 n'autorise que l'accès root. Sans enquêter en détail, il semble être assez verrouillé.
Maintenant, à propos de cette autre fuite dont je vous menaçais: les applications Lion ont tendance à enregistrer leur état lorsque vous quittez, donc si vous avez un document confidentiel ouvert lorsque vous quittez, certaines de ses informations (comme je pense qu'une capture d'écran) peuvent être stockées dans ~ / Library / Saved Application State / someappid.savedState. Tant que vous fermez avant d'enregistrer, je pense que vous êtes en sécurité ici.