0

AES256Cryptor で暗号化された .txt ファイルにデータが含まれる iPhone/iPad アプリケーションを開発しています。データを含むファイルが非常に大きい (~10MB)。アプリケーションの起動時:

  1. .txt ファイルを読み取ります
  2. ファイルから文字列を復号化します (復号化には NSString にハードコードされたキーを使用します)
  3. 文字列が解析され、NSDictionary に入れられます (~ 40000 レコード)

アプリケーションはネットワークを使用しません (オフラインである必要があります)。私の質問は次のとおりです。

  1. データ (.txt 内) は比較的価値があり、ハッキングされるのを見たくありません。これはどれくらい安全だと思いますか?セグエションはありますか?
  2. ファイルからの読み取りと NSDictionary への保存には多くの時間がかかります (.txt の読み取りに約 5 秒、NSDictionary への保存の解析に約 5 秒):

.

NSString *encryptedString = [[NSString alloc] initWithData:[NSData dataWithContentsOfFile:path] encoding:NSUTF8StringEncoding];
NSError *error = nil;
NSData *encryptedData = [GTMBase64 decodeString:encryptedString];
NSData *decryptedData = [[RNCryptor AES256Cryptor] decryptData:encryptedData password:@"password" error:&error];
NSString *dataString  = [[NSString alloc] initWithData:decryptedData encoding:NSUTF8StringEncoding];
NSArray *records = [dataString componentsSeparatedByString:@"separator"];

for( "record in records") {
  save record to dictionary...
}

どうすれば改善できますか?

4

0 に答える 0