2009-06-16 29 views
7

पहला, मेरा प्रश्न पासवर्ड हैशिंग के बारे में नहीं है, लेकिन पासवर्ड एन्क्रिप्शन है। मैं एक डेस्कटॉप एप्लिकेशन बना रहा हूं जिसे उपयोगकर्ता को किसी तृतीय पक्ष सेवा में प्रमाणित करने की आवश्यकता है। लॉगिन प्रक्रिया को तेज़ करने के लिए, मैं उपयोगकर्ता को अपने प्रमाण-पत्रों को सहेजने का विकल्प देना चाहता हूं। चूंकि मुझे सेवा में प्रमाणित करने के लिए पासवर्ड की आवश्यकता है, इसलिए इसे धोया नहीं जा सकता है।लिनक्स पर पाइथन के साथ पासवर्ड को कैसे बदला जा सकता है?

मैंने प्रमाण पत्र को एन्क्रिप्ट करने के लिए pyCrypto मॉड्यूल और इसके Blowfish या AES कार्यान्वयन का उपयोग करने के बारे में सोचा था। समस्या यह है कि कुंजी को स्टोर करना है। मुझे पता है कि कुछ एप्लिकेशन सीधे स्रोत कोड में कुंजी स्टोर करते हैं, लेकिन चूंकि मैं ओपन सोर्स एप्लिकेशन कोडिंग कर रहा हूं, यह एक बहुत ही कुशल समाधान की तरह प्रतीत नहीं होता है।

तो मैं सोच रहा था कि, लिनक्स पर, आप पासवर्ड संग्रह सुरक्षा बढ़ाने के लिए उपयोगकर्ता विशिष्ट या सिस्टम विशिष्ट कुंजी लागू करेंगे।

यदि आपके पास pyCrypto और system/user विशिष्ट कुंजी का उपयोग करने से इस समस्या का बेहतर समाधान है, तो इसे साझा करने में संकोच नहीं करें। जैसा कि मैंने पहले कहा था, हैशिंग एक समाधान नहीं है और मुझे पता है कि पासवर्ड एन्क्रिप्शन कमजोर है, लेकिन मैं उपयोगकर्ता को विकल्प देना चाहता हूं। जीनोम-कीरिंग का उपयोग करना एक विकल्प नहीं है, क्योंकि बहुत से लोग (स्वयं सहित) इसका उपयोग नहीं करते हैं।

+0

डारन। मैं gnome-keyring का सुझाव देने जा रहा था :( – Zifre

उत्तर

5

पासवर्ड एन्क्रिप्ट करना वास्तव में आपको सादे टेक्स्ट में संग्रहीत करने से अधिक सुरक्षा प्रदान नहीं करता है। डेटाबेस तक पहुंचने में सक्षम कोई भी शायद आपके वेबसर्वर मशीनों तक पूर्ण पहुंच प्राप्त कर सकता है।

हालांकि, अगर सुरक्षा का नुकसान स्वीकार्य है, और आपको वास्तव में इसकी आवश्यकता है, तो मैं स्थापना प्रक्रिया के हिस्से के रूप में एक नया कीफाइल (यादृच्छिक डेटा के अच्छे स्रोत से) उत्पन्न करता हूं और इसका उपयोग करता हूं। स्पष्ट रूप से इस कुंजी को यथासंभव सुरक्षित रूप से स्टोर करें (फ़ाइल अनुमतियों को बंद कर दें आदि)। स्रोत में एम्बेडेड एक कुंजी का उपयोग करना एक अच्छा विचार नहीं है - अलग-अलग इंस्टॉलेशन में एक ही कुंजी होने का कोई कारण नहीं है।

0

पासवर्ड सुरक्षित ब्रूस श्नीयर और ओपन सोर्स द्वारा डिज़ाइन किया गया है। यह विंडोज के लिए है, लेकिन आप यह देखने में सक्षम होना चाहिए कि वे क्या कर रहे हैं और संभवतः इसका पुन: उपयोग कर सकते हैं।

http://www.schneier.com/passsafe.html

http://passwordsafe.sourceforge.net/

इस पढ़ें: If you type A-E-S into your code, you're doing it wrong.

+0

कि आखिरी लिंक ("यदि आप टाइप करते हैं ...") 404 देता है। –

+0

उन्होंने ब्लॉग को स्थानांतरित किया - अपडेट किया गया –

+0

आआंद यह फिर से टूट गया है। कुछ गुगलिंग में यह प्रतिबिंबित होता है कुछ जगहें, लेकिन वे सभी छवियों को याद कर रहे हैं। – TRiG

5

PAM का उपयोग करें। आप एक मॉड्यूल बना सकते हैं जो उपयोगकर्ता लॉग इन करते समय स्वचालित रूप से कुंजी को अन-एन्क्रिप्ट करता है। यह आंतरिक रूप से है कि कैसे GNOME-Keyring काम करता है (यदि संभव हो)। आप पाइथन में पीएएम मॉड्यूल भी pam_python के साथ लिख सकते हैं।

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

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