ऊपर योन के और बेन्जी की टिप्पणियों पर विस्तार करने के लिए:
1) लोनन फुलर की विधि एन्क्रिप्शन चेक पर निर्भर करती है, जो योनेल से ऊपर से जुड़ा हुआ है, ऐसा प्रतीत होता है कि अभी भी स्वचालित खुर के उपकरणों से हार नहीं हुई है। मैं किसी भी समय जल्द ही LC_ENCRYPTION_INFO हेडर की स्थिति को बदलते हुए Apple के बारे में अधिक चिंतित नहीं होगा। ऐसा लगता है कि जेलबॉर्न आईफ़ोन पर कुछ अप्रत्याशित प्रभाव हुए हैं (तब भी जब उपयोगकर्ता ने एक प्रति खरीदी है ...)
किसी भी दर पर, मैं उस कोड के आधार पर किसी उपयोगकर्ता के खिलाफ कोई कठोर कार्रवाई नहीं करूंगा ...
2) बैंजी की टिप्पणी को फिर से पूरक करने के लिए। मोटापा (आपके एंटी-पायरेसी कोड में किसी भी स्ट्रिंग मान के साथ काम करते समय एक परम आवश्यकता): एक समान लेकिन शायद आसान तरीका यह है कि हमेशा नमकीन हैशेड की जांच करें कि आप जिस मूल्य की तलाश कर रहे हैं उसका संस्करण । उदाहरण के लिए (भले ही वह जाँच अब कुशल न हो), आप प्रत्येक MainBundle के प्रमुख नाम को md5 (कीनेम + "कुछ गुप्त नमक") के अनुसार उचित स्थिरांक की जाँच करेंगे ... बल्कि बुनियादी, लेकिन सुनिश्चित करने के किसी भी प्रयास को हराने के लिए तार।
बेशक, इसके लिए आपको अप्रत्यक्ष रूप से उस मूल्य की क्वेरी करने में सक्षम होना चाहिए जिसकी आप तुलना करना चाहते हैं (उदाहरण के लिए एक सरणी से होकर गुजरता है)। लेकिन यह सबसे अधिक बार होता है।