में स्ट्रिंग को सुरक्षित करना मैं एक्समरिन द्वारा एंड्रॉइड के लिए मोनो का उपयोग करके एंड्रॉइड ऐप विकसित कर रहा हूं। मैं वर्तमान में Google Play API का उपयोग करके इन-एप-खरीद क्षमता जोड़ने पर काम कर रहा हूं। ऐसा करने के लिए, मुझे अपने ऐप के भीतर से Google को सार्वजनिक लाइसेंस कुंजी भेजने की आवश्यकता है। इस मुद्दे के बारे में, Google अनुशंसा निम्नलिखित:एपीके
सुरक्षा सिफारिश: यह अत्यधिक अनुशंसित है कि आप नहीं हार्ड कोड सटीक सार्वजनिक लाइसेंस कुंजी स्ट्रिंग मान के रूप में द्वारा Google Play प्रदान की है। इसके बजाए, आप सबस्ट्रिंग्स से रनटाइम पर पूरी सार्वजनिक लाइसेंस कुंजी स्ट्रिंग का निर्माण कर सकते हैं, या इसे एन्क्रिप्टेड स्टोर से इसे कन्स्ट्रक्टर में पास करने से पहले पुनर्प्राप्त कर सकते हैं। यह दृष्टिकोण दुर्भावनापूर्ण तृतीय पक्षों के लिए आपकी एपीके फ़ाइल में सार्वजनिक लाइसेंस कुंजी स्ट्रिंग को संशोधित करने के लिए अधिक कठिन बनाता है।
मैंने कभी भी एन्क्रिप्शन, हैकिंग/क्रैकिंग या सॉफ़्टवेयर सुरक्षा के किसी अन्य पहलू से निपटाया नहीं है, इसलिए मुझे यकीन नहीं है कि Google की सलाह को कैसे कार्यान्वित किया जाए। मेरा सवाल यह है कि कैसे एक पर्याप्त एक सुरक्षा विशेषज्ञ होने के बिना एंड्रॉइड के लिए मोनो के साथ किए गए एंड्रॉइड एपीके में एक स्ट्रिंग सुरक्षित करता है?
उत्तर के लिए धन्यवाद। लेकिन मैं अभी भी इस मुद्दे को हल करने के लिए कुछ अच्छी उद्योग मानक विधि जानना चाहता हूं, क्योंकि Google Play कुंजी मेरे ऐप में एकमात्र महत्वपूर्ण स्ट्रिंग नहीं है (उदाहरण के लिए फेसबुक ऐप कुंजी भी, और शायद भविष्य में अन्य)। – Ramsay
एक वाणिज्यिक obfuscation उपकरण का उपयोग करें। ये उपकरण आपके कोड पर जाते हैं और इसे अपनाने के लिए कठिन बनाते हैं। वाणिज्यिक लोगों में आमतौर पर एक स्वचालित स्ट्रिंग एन्क्रिप्शन सुविधा शामिल होती है जो सुनिश्चित करता है कि आपके सभी हार्डकोडेड स्ट्रिंग्स (जैसे कुंजी) को आपके ऐप में कभी भी सादे टेक्स्ट नहीं रखा जाता है और रनटाइम में डीकोड किया जाता है। सी #/एंड्रॉइड के लिए बहुत सारे obfuscators उपलब्ध हैं।वे आपकी निर्माण प्रक्रिया में एकीकृत करने के लिए बहुत आसान हैं और वे आपके कोड की सुरक्षा के क्षेत्र में आपके लिए भारी भारोत्तोलन करते हैं। – talkol
संभावित हैकर्स को मौत के लिए परेशान करने के लिए वाणिज्यिक obfuscators द्वारा उपयोग की जाने वाली कुछ तकनीकों की एक सूची यहां दी गई है: http://www.ssware.com/cryptoobfuscator/features.htm। हमेशा ध्यान रखें कि एक निर्धारित हैकर अभी भी इन सभी को दूर करने में सक्षम होगा .. लेकिन यह उसके लिए बहुत कम मजेदार होगा;) – talkol