답변:
나는 몇 가지 테스트를 수행했으며 (정말로) 권위있는 답변을 제공 할 수 있습니다.
짧은 대답 : 버전은 실제 파일과 동일한 디스크 (또는 디스크 이미지)에 저장되므로 버전은 암호화 된 이미지 외부에서 정보를 유출해서는 안됩니다. 그러나 또 다른 누출이있을 수 있습니다 (아래 참조).
긴 대답 : 버전은 각 볼륨의 맨 위에 다음과 같은 내부 구조를 가진 ".DocumentRevisions-V100"이라는 보이지 않는 폴더를 만듭니다.
.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 (???)
sqlite 인덱스와 이에 대한 액세스를 중재하는 백그라운드 데몬에 대한 정보 는 ars technica에서 John Siracusa의 훌륭한 리뷰를 읽으십시오 .
문서 버전 자체는 AllUID 또는 PerUID / youruserid의 하위 디렉토리에 저장됩니다. 그 아래에서 버전이 지정된 각 문서는 1부터 시작하여 번호가 매겨진 자체 하위 디렉토리를 가져옵니다. 그 아래에는 "com.apple.documentVersions"라는 단일 폴더가 있으며, 그 아래에 각 개정 본은 별도의 문서로 저장됩니다 (청크로 분할되지 않는 한- -UUID 및 유형 확장명으로 명명 된 큰 문서를 실험하지 않았습니다. 예를 들어, 내가 (사용자 # 501) 부트 볼륨에서 rtf 문서를 편집하고 여러 개정판을 저장하면 다음과 같이 저장 될 수 있습니다.
/.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
그런 다음 다른 rtf 파일을 열고 해당 버전을 저장하면 파일 이름이 지정 될 수 있습니다.
/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf
SecretDocs 이미지에 저장 한 경우 (소유권이 무시 된 상태로 마운트) 버전은 다음과 같이 저장됩니다.
/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf
BTW, 버전 파일에 대한 권한이 원본 파일에서 복제 된 것 같습니다. 둘러싸는 폴더에 대한 권한은 실행 만 허용하는 경향이 있습니다 (예 : 파일 이름을 볼 수 없지만 파일 이름을 알고 있으면 액세스 할 수 있음). 예를 들어 PerUID / 501은 사용자 501에 대해서만 실행을 허용하고 다른 사람은 액세스하지 못하도록 설정되어 있습니다. db-v1 폴더는 루트 액세스 만 허용합니다. 자세히 조사하지 않으면 꽤 잠겨있는 것처럼 보입니다.
라이온스 앱은 종료 할 때 상태를 저장하는 경향이 있으므로 종료 할 때 기밀 문서를 열면 일부 정보 (스크린 샷과 같은)가 ~에 저장 될 수 있습니다. / 라이브러리 / 저장된 응용 프로그램 상태 /someappid.savedState. 저장하기 전에 닫는 한 여기에 안전 하다고 생각 합니다.
Phil M의 훌륭한 질문!
가능한 한 간략하게 설명하겠습니다. 주요 개념:
어떤 상황에서는
… 10.7 (빌드 11A511)에서 :
~/Library
루트 사용자로 제한되지 않은 하위 디렉토리 가 사용됩니다. …
— https://discussions.apple.com/message/15739595#15739595 (2011-07-25)
또한 https://discussions.apple.com/message/15741724#15741724 에서 약간 조정되었습니다.
동일한 AFP 서버를 사용한 가장 최근의 테스트에서 원격 .png 스크린 샷의 버전은 다음과 같습니다.
있는 지역 과 제대로 숨겨진 내 ~/Library
... 참조하십시오 자동 저장, 버전, 이력서와 투명 응용 프로그램 수명주기 (TAL) : 새로운 기술 정보를
있습니다 하지 로컬에서/.DocumentRevisions-V100
있습니다 하지 원격에서/.DocumentRevisions-V100
…
reunion:~ centrimadmin$ ls -ld /.DocumentRevisions-V100
ls: /.DocumentRevisions-V100: No such file or directory
로컬이있을 수 있습니다 일부 에서 관련 데이터를 /.DocumentRevisions-V100
하지만,이 경우, 원격 파일의 버전은 지역 및 루트 사용자에 국한되지 않습니다. 파일 서버에서 연결을 끊은 후 열린 원격 파일의 로컬 버전을 보여주는 http://www.wuala.com/grahamperrin/public/2011/07/25/e/?mode=gallery의 스크린 샷 001을 참조하십시오 .
Ask Different…의 암호화 된 .sparsebundle 이미지, 보안에서 시작 질문으로 돌아갑니다. 이걸 고려하세요:
암호화 된 스파 스 번들 디스크 이미지와 관련하여 사용자는 MS-DOS보다 JHFS + (영구 버전 스토리지 지원)를 사용할 가능성이 높습니다 (지원 부족)
그러나 누군가는 볼륨이 마운트 해제 된 후 암호화되지 않은 버전이 사용자의 홈 디렉토리 (암호화되지 않을 수 있음) 내에 남아 있는지 테스트해야합니다.
개인적으로 fseventer는 이와 같은 테스트 상황에서 가장 유용합니다. YMMV.
이 답변 중 일부는 암호화에 국한되지 않고 스파 스 번들 디스크 이미지에 국한되지 않고 보안에 국한되지 않은 질문을 제기 할 수 있습니다. 이들은 잠재적으로 복잡한 주제이므로 제발 답변하십시오.이 답변 아래에 의견으로 질문을하는 것이 아니라 각 질문 을 개별적으로 요청하는 것이 좋습니다 .
나는 확인 버전 기능에 애플의 개발자 문서를 하며 문서의 현재 버전으로 (하나 같은 파일, 또는 동일한 폴더를 의미) 문서의 이전 버전이 동일한 "장소"에 저장되어있는 것을 나타내는 것 같다; 자세한 내용은 문서를 참조하십시오.
AppleInsider의 "Inside Mac OS X 10.7 Lion : 자동 저장, 파일 버전 및 타임머신" 이라는 기사도 있습니다 .
Time Machine과 달리 Versions는 로컬 문서 파일 내에 모든 변경 스냅 샷을 추가하여 파일 시스템 혼란과 Time Capsule 또는 기타 외부 디스크의 백업에 액세스하여 지난 몇 시간 동안 생성 된 이전 버전으로 되돌릴 필요가 없습니다.
버전 기능의 작동 방식에 대한 자세한 설명을 아직 찾지 못했습니다.
.DocumentRevisions-V100
문서와 같은 파일에 저장되어 있지 않다는 인상을 받았다
Gordon, 이것은 Knox 및 Espionage의 소프트웨어 개발자뿐만 아니라 모든 사람에게 희소식입니다 (이 두 앱을 모두 사용합니다).
사용자가 조심해야 할 시나리오는 다음과 같습니다. 외장 드라이브의 마운트 된 암호화 디스크 이미지 내의 파일에 액세스하는 경우 버전 파일은 암호화되지 않은 형식으로 사용자의 시스템 드라이브에있을 수 있습니다. 이를위한 한 가지 해결 방법은 .sparsebundle을 마운트하기 전에 시스템 드라이브에 복사하는 것입니다.
또 다른 시나리오는 .sparsebundle이 동일한 네트워크의 다른 Snow Leopard Mac에 있고 이미지가 네트워크에서 공유되어 Finder를 통해 탐색하여 Lion Mac에 마운트 할 수있는 경우입니다. (때로는이 작업을 수행합니다.) 이렇게하면 모든 버전 파일이 사용자의 시스템 디스크에 암호화되지 않은 형태로 저장됩니다. 이에 대한 한 가지 해결 방법은 화면 공유를 사용하여 Snow Leopard Mac을 제어 한 다음 해당 Mac의 이미지를 마운트하고 작업하는 것입니다.
결론은 Lion에서 이미지가 시스템 드라이브에 없으면 암호화 된 디스크 이미지를 사용할 때 사람들이 그 어느 때보 다 더 많은 것을 이해하고주의를 기울여야한다는 것입니다. Knox 및 Espionage 개발자가 고객에게 이러한 문제에 대해 경고하기를 바랍니다.
편집 : Graham의 대답은 대부분의 가정을 뒷받침하는 것 같습니다.
.DocumentRevisions
암호화 된 볼륨에 배치 될 것이라고 가정합니다 . @ Gordon의 대답도 그것을 확인하는 것 같습니다.