2010-05-08 7 views
1

민감한 정보를 보유한 앱을 만들고 싶습니다. 은행 계좌 정보를 상상해보십시오. 사용자가 응용 프로그램을 처음 시작할 때이 정보를 양식에 입력합니다. 사용자가 앱을 사용할 때마다 (비밀번호를 입력하지 않고도)이 정보를 저장하고 사용할 수 있기를 바랍니다. 그러나 iPhone에 비밀번호가 잠겨있어 도난당한 경우 파일 시스템에서 데이터에 쉽게 액세스 할 수 있기를 바랍니다.iPhone에서 양식 데이터를 난독 화/암호화하는 가장 좋은 방법

데이터를 암호화하거나 난독 화하는 가장 좋은 방법은 무엇입니까? 양식에는 UITextField의 많은 NSString이 있습니다.

미국 이외의 개발자 (저는 영국에 있음)를 위해 iPhone에 대한 암호화 내보내기 제한이 있다는 것을 알고 있습니다. 따라서 스토어에서 가져 오기 위해 Apple의 앱 제출 고리를 건너 뛰는 것을 피하는 것이 좋습니다.

답변

4

Keychain Services 내장 기능을 사용하지 않으시겠습니까? 그것이 바로 그 때문입니다.

편집 : SDKDevFAQ.com의 문서에 대한 Keychain Servicestutorial 및 GitHub의에 sample code A를가 가리키는. 또한 키 체인 사용에 관해서는 this blog entry을 확인하십시오.

+0

내 질문에 설명 된 목적을 위해 키 체인을 사용하는 좋은 자습서를 알고 있습니까? – cannyboy

+0

키 코드 사용 방법에 대한 샘플 코드와 토론에 대한 내 대답 링크를 추가했습니다. – progrmr

0

jailbroken iPhone 장치로 인해 다른 응용 프로그램에서 NSUserDefaults를 읽을 수 있는지 여부를 알 수 없습니다. 그렇지 않다면 파일 대신 정보를 저장할 수 있습니다.

또는 장치 ID를 기반으로 (그러나 같지는 않음) 소금을 생성하고 문자열의 바이트와 XOR하면됩니다. 소금을 생성하는 알고리즘이 사소하지 않고 문자열이 너무 길지 않으면 데이터가 상당히 안전합니다. 무거운 암호화 작업을하지 않고도 "상당히 안전함"을 보장 할 수 없습니다.

관련 문제