2012-01-16 14 views
6

मैं वर्तमान में एक बहु-मंच ऐप विकसित कर रहा हूं जो ट्विटर का उपयोग करता है, जिसमें ओथ के माध्यम से प्रमाणीकरण भी शामिल है।गैर-गुप्त गुप्त कुंजी को उजागर करने के जोखिम क्या हैं? क्या कोई कामकाज है?

मैंने कई मौजूदा ऐप्स देखे हैं और इनमें से अधिकांश ऐप के अंदर आईडी और गुप्त कुंजी दोनों को एम्बेड करना प्रतीत होता है।

ऐसा करने के जोखिम क्या हैं? क्या यह सिर्फ आपकी कुंजी निकालने के लिए कोई व्यक्ति आपके ऐप बाइनरी को "डाउनलोड और निरीक्षण" कर सकता है - और फिर आपका ऐप (फ़िशिंग शैली) होने का नाटक कर सकता है? या क्या अन्य जोखिम हैं?


जोखिमों के अलावा, क्या कोई कामकाज या समाधान लोगों को पता है?

एक समाधान जो मैंने पहले देखा है वह यह है कि कुछ लोग अपनी वेबसाइट के माध्यम से सभी ट्विटर कॉल को रूट करके इसका काम करते हैं - उदा। OAuth Twitter with only Consumer Key (not use Consumer Secret) on iPhone and android - लेकिन यह काफी धीमी और महंगी लगती है - अगर मैं इससे बच सकता हूं (या क्या मैंने समाधान को गलत समझा है - क्या यह सिर्फ एक लेख है जो वेबसाइट के माध्यम से जाता है?)

+0

मैं आपकी चिंता को समझता हूं, लेकिन जब तक कि ऐप बड़ा और लोकप्रिय न हो जाए, मुझे वास्तव में यह नहीं लगता कि यह एक समस्या है। और यदि वे आपके ऐप को रिवर्स इंजीनियर करते हैं, तो आप केवल इन शर्तों को डाल दें कि यह अवैध है और उन्हें मुकदमा है :) – f2lollpll

उत्तर

1

एकमात्र वास्तविक खतरा ऐसा लगता है कि कोई व्यक्ति आपकी ऐप का प्रतिरूपण कर सकता है और उसे ट्विटर द्वारा प्रतिबंधित कर सकता है, तो आपके पास उपयोगकर्ताओं को एक नई कुंजी के लिए जाना होगा।

यह Google I/O टॉक में कोड को खराब करने के लिए कुछ पॉइंटर्स हैं जो इसे रिवर्स इंजीनियर के लिए कठिन बनाते हैं। http://www.google.com/events/io/2011/sessions/evading-pirates-and-stopping-vampires-using-license-verification-library-in-app-billing-and-app-engine.html

1

वैकल्पिक हल है कि मैं के साथ आया एक प्रमाणीकृत वेब सेवा कॉल का उपयोग कर (SSL पर) अपने वेबसर्वर से गुप्त कुंजी लाने के लिए है। आप इसे क्लाइंट ऐप में कैश कर सकते हैं (बस मेमोरी में)। जब आप सर्वर से कनेक्ट किए बिना कनेक्ट करने की आवश्यकता होती है तो इसका उपयोग करें।

मुझे लगता है कि नकारात्मकता यह है कि कोई भी शायद आपके एप को डीबगर के नीचे चला सकता है और स्मृति का निरीक्षण कर सकता है और कुंजी प्राप्त कर सकता है।

संबंधित मुद्दे