2012-12-07 5 views
4

핵심 데이터를 암호화하려고합니다.코어 데이터 암호화

다른 질문에서 제안 된대로, 나는 닉 해리스 https://nickharris.wordpress.com/2010/07/14/core-data-and-enterprise-iphone-applications-protecting-your-data/에서 다음 게시물을 읽었습니다.

내 장치에서 처음에는 설정에서 암호를 켰습니다.

내 appDelegate에서 내 persistentStoreCoordinator를 만들 때 NSFileProtectionComplete 속성을 핵심 데이터 저장소 파일에 추가합니다. 내 핵심 데이터 저장소 파일에 암호가 잠겨 있으면 핵심 데이터가 암호화되어야 함을 의미합니다. 얻기 쉬운.

NSDictionary *fileAttributes = [NSDictionary dictionaryWithObject:NSFileProtectionComplete forKey:NSFileProtectionKey]; 
if (![[NSFileManager defaultManager] setAttributes:fileAttributes ofItemAtPath:[storeURL path] error:&error]) { 
     NSLog(@"Cant encrypt"); 
    } 

그러나, 잠금 장치 암호로,이 모든 일을하는 데, 나는 여전히 응용 프로그램 샌드 박스 내 바탕 화면에 전체 파일을 취할 수 IEXPLORER와 I를 사용하여 .sqllite 파일이 들어있는 문서 폴더에 액세스 할 수 있으며 완전히 암호화되지 않은 상태로 봅니다.

나는 뭔가를 놓치고 있습니까 ??

+0

아무도 이것에 대한 아이디어가있어? – josully

답변

3

누군가가 관심이있는 경우, 나는 어리석게도 내 질문에 언급 된 바와 같이 사과가 제공 한 암호화가 작동하지 않는다고 생각했습니다. CoreData 파일의 암호화를 켜고 테스트 중이었습니다. 단순히 iExplorer를 사용하여 내 장치에서 .sqlLite 파일을 잡으려고했습니다. 그것은 sqlLite 파일이 내 sqlLite 브라우저를 사용하여 열렸 기 때문에 파일에 액세스하는 것처럼 보였습니다. 그러나 그것은 실제로 장치에서 최신 파일을 열지 않고 대신 파일의 캐시 된 버전을 여는 중이었습니다 ...

+0

에 스팟이 있습니다. 같은 문제가있었습니다. – Dan