Ho fatto alcuni test e posso offrire una risposta (si spera) autorevole.
Risposta breve: le versioni sono memorizzate sullo stesso disco (o immagine del disco) del file effettivo, quindi le versioni non devono perdere informazioni al di fuori dell'immagine crittografata. Ma potrebbe esserci un'altra perdita, vedi sotto.
Risposta lunga: le versioni creano una cartella invisibile nella parte superiore di ciascun volume, denominata ".DocumentRevisions-V100" con una struttura interna come questa:
.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 (???)
Per informazioni sull'indice sqlite e sul demone di sfondo che media l'accesso ad esso, leggi l'eccellente recensione di John Siracusa su ars technica .
Le stesse versioni del documento sono archiviate in sottodirectory in AllUID o PerUID / youruserid. In base a ciò, ogni documento con versione ottiene la propria sottodirectory, numerata a partire da 1. Sotto quella c'è una singola cartella denominata "com.apple.documentVersions", e sotto quella, ogni revisione è memorizzata come documento separato (a meno che non sia suddivisa in blocchi - - Non ho sperimentato documenti di grandi dimensioni) chiamato con un UUID e un'estensione di tipo. Ad esempio, se io (utente # 501) modifico un documento RTF sul mio volume di avvio e salvo diverse revisioni, potrebbero essere memorizzati come:
/.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
Se poi aprissi un altro file RTF e ne salvassi una versione, potrebbe essere chiamato:
/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf
Se lo salvassi sull'immagine SecretDocs (montata con proprietà ignorata), le versioni verrebbero archiviate come:
/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf
A proposito, le autorizzazioni sui file di versione sembrano essere clonate dai file originali. Le autorizzazioni per le cartelle allegate tendono a consentire solo l'esecuzione (ovvero non è possibile visualizzare i nomi dei file, ma se si conosce il nome del file è possibile accedervi). Ad esempio, PerUID / 501 è impostato per consentire l'esecuzione solo per l'utente 501, nessun accesso per nessun altro. La cartella db-v1 consente solo l'accesso come root. Senza indagare in dettaglio, sembra essere piuttosto bloccato.
Ora, riguardo all'altra perdita che ti ho minacciato: le app Lion tendono a salvare il loro stato quando esci, quindi se hai un documento riservato aperto quando esci, alcune delle sue informazioni (come penso che uno screenshot) potrebbero essere archiviate in ~ / Libreria / Stato applicazione salvata / someappid.savedState. Finché chiudi prima di salvare penso che tu sia al sicuro qui.