मुझे डर है कि तुम यहाँ दो अवधारणाओं मिश्रण कर रहे हैं हूँ, प्रमाणीकरण/प्रमाणीकरण और गोपनीयता, एक ही चरण में दोनों पहलुओं को कवर करने की कोशिश कर रहा है, और यह काम नहीं करेगा। आपको असममित एल्गोरिदम के साथ "वास्तविक डेटा" को कभी भी एन्क्रिप्ट नहीं करना चाहिए। ए) वे इसके लिए बहुत धीमी हैं, बी) सूक्ष्म मुद्दे हैं कि, यदि सही नहीं किया जाता है, तो आपके समाधान की सुरक्षा को गंभीर रूप से कमजोर कर दिया जाएगा।
इसका एक अच्छा नियम है कि केवल एक चीज है कि आप निजी असममित कुंजी के साथ सममित एक बहुत तेजी से सममित एल्गोरिथ्म द्वारा इस्तेमाल किया कुंजी को एनक्रिप्ट है खत्म करना चाहिए। लेकिन लगभग सभी मामलों में आपको ऐसा भी नहीं करना चाहिए, क्योंकि उन मामलों में 90% मामलों में जो आप वास्तव में चाहते हैं वह टीएलएस (एसएसएल) है - मैंने कुछ समय पहले here क्यों समझाया था।
आपके मामले में, मुझे लगता है आवश्यकताएँ हैं:
डेटा है कि डेटाबेस में संग्रहीत करने के लिए की गोपनीयता: आम जनता यह (पढ़ने के लिए या यहां तक कि इसे उपयोग करने में सक्षम नहीं होना चाहिए)
एक चयनित कुछ (शायद सिर्फ एक व्यक्ति) उपयोग करने में सक्षम है और पढ़ने होना चाहिए कि डेटा
पहला लक्ष्य आम तौर पर 012,318 का उपयोग करके हासिल की है। दूसरा लक्ष्य, यद्यपि संबंधित है, काफी अलग तरीकों से महसूस किया गया है। आप चाहते हैं कि उपयोगकर्ता प्रमाणीकृत होने के लिए फ़ाइल तक पहुंच रहा हो (यानी पहचान स्थापित करें) और उसके शीर्ष पर आप भी उन्हें अधिकृत होना चाहते हैं (यानी।जांच करें कि स्थापित पहचान का अधिकार है कि वे क्या करना चाहते हैं)। यह वह जगह है जहां असममित क्रिप्टोग्राफी चरण दर्ज कर सकती है, लेकिन जरूरी नहीं है। चूंकि आपका प्रश्न रेल के साथ टैग किया गया है, मुझे लगता है कि हम एक रेल आवेदन के बारे में बात कर रहे हैं। आपके पास आम तौर पर पहले से ही उपयोगकर्ताओं को प्रमाणीकृत और अधिकृत करने के कुछ साधन हैं (सबसे पहले उल्लिखित टीएलएस शामिल हैं), आप वास्तविक फ़ाइल एन्क्रिप्शन/डिक्रिप्शन के लिए एक सममित कुंजी स्थापित करने के लिए उन्हें पुनः उपयोग कर सकते हैं। Password-based encryption इस उद्देश्य के लिए उपयुक्त होगा, अगर आप असमान क्रिप्टो से बचना चाहते हैं। हालात और भी जटिल हो जाते हैं यदि आप पहले से ही गोपनीय डेटा की अखंडता सुनिश्चित करना चाहते हैं, यानी, आप प्रमाणित और अधिकृत उपयोगकर्ता को इस तरह की गारंटी देना चाहते हैं कि अंत में जो भी पहुंच है, उसे किसी भी तरह से बदला नहीं गया है इस बीच में।
इसके लिए एक समाधान विकसित करना कोई मामूली कार्य नहीं होगा और आपकी दी गई आवश्यकताओं पर बड़ी हद तक निर्भर करेगा, इसलिए मुझे डर है कि कोई भी "सुनहरा तरीका" नहीं है जो हर किसी के लिए उपयुक्त है। मैं कुछ शोध करने का सुझाव दूंगा, आप जो हासिल करने की कोशिश कर रहे हैं उसकी एक स्पष्ट तस्वीर प्राप्त करें और फिर उन विषयों पर अतिरिक्त सलाह प्राप्त करने का प्रयास करें जिन्हें आप अभी भी अनिश्चित/असहज महसूस करते हैं।
मैं वास्तव में कोई रूबीस्ट नहीं हूं, लेकिन वे बहुत अच्छी बैटरी हैं। मुझे आश्चर्य है कि पाइथन में बराबर कितना मुश्किल होगा ... – brice
बस जोड़ना चाहते हैं कि उन फ़ाइलों को एन्सेप्ट किया जाना चाहिए, उदाहरण के लिए, एईएस -256, लेकिन इसकी कुंजी आरएसए के साथ भेज दी जानी चाहिए। – tiktak
मुझे खेद है, लेकिन यह वास्तव में बुरा सलाह है। ओपी फ़ाइल एन्क्रिप्शन/डिक्रिप्शन के बारे में वार्ता करता है और इसके लिए आपको आरएसए का कभी भी उपयोग नहीं करना चाहिए। – emboss