ちょっと、ランダムなパスワードを生成する小さなアプリを作成し、そのアプリですべての可能性を実行して、パスワードが何回試行されたかを確認してみたら、クールだと思いました。パスワードによっては、アプリが動作することもあればクラッシュすることもあります。大量のメモリを使用してクラッシュするのを防ぐためにできることは何か知りたかったのです。これが方法です。
-(void)hackString
{
NSString *string;
NSString *string1;
NSString *string2;
NSString *string3;
NSString *string4;
NSString *string5;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^(void){
NSString *hackedString;
for (string in self.validLetters) {
//[hackedString appendString:string];
for (string1 in self.validLetters) {
//[hackedString appendString:string1];
for (string2 in self.validLetters) {
//[hackedString appendString:string1];
for (string3 in self.validLetters) {
//[hackedString appendString:string1];
for (string4 in self.validLetters) {
for (string5 in self.validLetters) {
hackedString = [NSString stringWithFormat:@"%@%@%@%@%@%@",string,string1,string2,string3,string4,string5];
// NSLog(@"%@",hackedString);
[self testStringWithPassword:hackedString];
}
}
}
}
}
}
});
}
クラッシュを防ぐために何かすべきことはありますか?