स्थानीय भंडार कितना सुरक्षित है?


33

सवाल यह सब वास्तव में कहते हैं। मैं एक सेवा प्रदान करना चाहता हूं, लेकिन मैं किसी भी डेटा को डेटाबेस में संग्रहीत नहीं करना चाहता। हाल ही में हैकिंग आदि की सभी खबरों के साथ मुझे ऐसा लगता है कि यह अच्छा है कि ग्राहकों का अपने डेटा पर पूरा नियंत्रण है।

समस्या यह है कि संग्रहीत डेटा संभावित रूप से संवेदनशील है। मैं क्या करने जा रहा था ... जब कोई ग्राहक वेबसाइट पर जाता है तो एक सवाल होता है कि 'आप पर्सनल कंप्यूटर या सार्वजनिक कंप्यूटर पर हैं'। यदि वे एक सार्वजनिक कंप्यूटर पर हैं तो साइट एक्सेस से इंकार कर देगी।

यदि वे एक व्यक्तिगत कंप्यूटर पर थे तो यह उन्हें पासवर्ड सेट करने के लिए संकेत देगा। उनके सभी डेटा को तब इस पासवर्ड से एन्क्रिप्ट किया जाएगा। अब जाहिर है यह बहुत सुरक्षित नहीं है। एन्क्रिप्शन विधि जावास्क्रिप्ट और उनके पासवर्ड सादे पाठ में होगी इसलिए मुझे लगता है कि यह एक समझदार उपयोगकर्ता के लिए स्थानीयस्टोरेज में पासवर्ड का पता लगाना और डेटा एक्सेस करना संभव होगा।

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

तो वास्तव में सवाल यह है कि क्या लोकलस्टोरेज काफी सुरक्षित है?

अतिरिक्त सवाल .. कितना मुश्किल है अपने स्थानीय तंत्र को मिटा देना? मैं नहीं चाहूंगा कि उपयोगकर्ता गलती से अपना डेटा मिटा दें।

अंत में - क्या यह उनके डेटा को एन्क्रिप्ट / डिक्रिप्ट करने के लायक भी है जैसे कि आपके पास पासवर्ड है जिससे आप साइट तक पहुंच सकते हैं ..


2
क्रिप्टोग्राफी करने के लिए क्लाइंट-साइड जावास्क्रिप्ट सबसे अच्छी जगह नहीं है। कोई भी बर्खास्त उपयोगकर्ता कोड को देख सकता है और आपके एन्क्रिप्शन अल्गर्थ में हैक कर सकता है और ऐसा कर सकता है कि यह वास्तव में कुछ भी नहीं करता है और यह केवल एन्क्रिप्ट किए गए पासवर्ड को स्वीकार करता है।

जवाबों:


10

कैसे के बारे में सिर्फ पासवर्ड भंडारण नहीं, स्थानीय भंडारण में भी नहीं? आप पासवर्ड से कुंजी प्राप्त करने के लिए एक कुंजी व्युत्पत्ति फ़ंक्शन का उपयोग कर सकते हैं। एक नमक और उचित संख्या में पुनरावृत्तियों के साथ यह शालीनतापूर्वक सुरक्षित होना चाहिए।


यह अधिक सुरक्षित होगा यदि पासवर्ड PHP में सबमिट किया गया था जो तब पर्दे के पीछे की कुंजी उत्पन्न करता था?
जेसन

नहीं। पासवर्ड पहले क्लाइंट पर दिया जाता है। इसे सर्वर पर भेजकर आप उस जोखिम को बढ़ा सकते हैं जो चोरी हो सकता है। जेएस में मुख्य व्युत्पत्ति ग्राहक पर रहस्य रखता है। हर मामले में आपको पीडब्लू को जल्द ही भूल जाना चाहिए। लेकिन मुझे लगता है कि यह अभी भी बेकार है - मेरा जवाब देखें।

कई हैकर्स काफी समझदार हैं ... Lib bCrypt का इस्तेमाल करें।
एडी बी

2

स्थानीय भंडारण के साथ जावास्क्रिप्ट का उपयोग करना अधिक से अधिक सुरक्षित है (आपका सर्वर प्लस ब्राउज़र और सर्वर के बीच संबंध)।

यदि कोई भी आपके सर्वर को संशोधित करने और विभिन्न जेएस फ़ाइलों की सेवा करने या प्रबंधित करने (स्थानांतरित होने के दौरान) को जेएस फाइलों को सर्वर से क्लाइंट को भेजा जाता है, तो वे अपने इच्छित डेटा के साथ कुछ भी कर सकते हैं।

इसके अतिरिक्त: क्योंकि डेटा क्लाइंट पर है आप डेटा की सुरक्षा के लिए कुछ नहीं कर सकते। एक साधारण सर्वर पर आप पहुंच की आवृत्ति को प्रतिबंधित कर सकते हैं (उदाहरण के लिए रिमोट पासवर्ड सुरक्षित: केवल 1 पासवर्ड 10 मिनट के भीतर पढ़ें)। यह सब बेकार है यदि डेटा क्लाइंट पर है और डेटा के साथ काम करने वाले सभी कोड को एक हमलावर द्वारा हेरफेर किया जा सकता है।

सब के बाद भी स्थानीय स्तर पर आप अपने वेब अनुप्रयोग को सुरक्षित करने की आवश्यकता है! (उम्मीद है) सुरक्षित सर्वर पर चीजें क्यों कर रहे हैं? यदि नहीं, तो क्लाइंट पर स्थापित स्थानीय प्रोग्राम का उपयोग क्यों नहीं किया जाता है?


आपको नहीं लगता कि मुख्य सुरक्षा मुद्दा यह है कि क्या डिवाइस का उपयोग किया जाता है या किसी और द्वारा चोरी किया जाता है?

2

स्थानीय सर्वर डेटा को डिक्रिप्ट करने के लिए उपयोग किए जाने वाले सर्वर से एक कुंजी प्राप्त करने के बारे में कैसे?

यह इस तरह काम कर सकता है:

  • जब एक सत्र स्थापित होता है, तो सर्वर एक कुंजी देता है।
  • स्थानीय कुंजी में डेटा को एन्क्रिप्ट / डिक्रिप्ट करने के लिए उस कुंजी का उपयोग किया जाता है।
  • जब उपयोगकर्ता पृष्ठ छोड़ देता है, तो कुंजी खो जाती है, दूसरों को पढ़ने से रोकती है कि लोकलस्टोरेज में क्या है।

यह केवल तब तक पहुँच की अनुमति देता है जब उपयोगकर्ता के पास एक स्थापित सत्र हो।


3
हालांकि यह ऑफ़लाइन डेटा तक पहुंचने के लिए काम नहीं करेगा (जो स्थानीयस्टोरेज के लिए प्राथमिक उपयोग के मामले जैसा लगता है)। इस विधि को ऑफ़लाइन उपयोग करने के लिए, आपको कुंजी को बनाए रखना होगा।
टिमोथी ली रसेल

0

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

इसे ऐसे समझें जैसे आप कुकीज़ के बारे में सोचते हैं। आपको कभी भी स्थानीय भंडारण में संवेदनशील डेटा नहीं रखना चाहिए। पासवर्ड, क्रेडिट कार्ड नंबर, जो भी हो।

आप हमेशा निष्क्रियता की मात्रा के बाद स्थानीय भंडारण को खाली करने के लिए कुछ सुविधा को लागू कर सकते हैं, लेकिन यह एक सुरक्षा समस्या को हल करने के लिए नहीं जा रहा है। इसकी तरह एक स्वचालित सत्र समाप्त हो रहा है। यही समस्या लागू होती है, यदि कोई व्यक्ति कंप्यूटर छोड़ता है और सत्र समाप्त होने से पहले कोई और बैठ जाता है, तो वे सामान कर सकते हैं।


0

दो मुद्दे:

  1. यदि आप सादे पाठ पासवर्ड संग्रहीत करते हैं और फिर इस तथ्य पर भरोसा करते हैं कि पाए जाने की संभावना नहीं है, तो यह अस्पष्टता के माध्यम से सुरक्षा है। बस डेटा को क्लीयरटेक्स्ट में स्टोर करें और उसी धारणा पर भरोसा करें (अभी भी सुरक्षित नहीं है, लेकिन सुरक्षा का कोई गलत अर्थ नहीं है)

  2. अधिकांश ब्राउज़रों पर, यदि लोग अपना कैश मिटाते हैं तो वे अपनी स्थानीय सामग्री को भी हटा देते हैं। लोग अपने इतिहास और कैश को पोंछते समय महत्वपूर्ण डेटा खोने की उम्मीद नहीं करते हैं।

मुझे लगता है कि आप लोकलस्टोरेज के लिए क्या करना चाहते हैं। आप के लिए एक बार देख ले सकता है आप एक स्थानीय डेटाबेस कि webapps के साथ अच्छी तरह से खेलता है उपयोग करना चाहते हैं CouchDB के couchapps

लेकिन पासवर्ड स्टोर न करें।


0

आप javascrypt का उपयोग कर सकते हैं । पासवर्ड के लिए उपयोगकर्ता से पूछें जो एन्क्रिप्शन / डिक्रिप्शन कुंजी बन जाएगा

आपको पासवर्ड संग्रहीत करने की आवश्यकता नहीं है, लेकिन जब भी उपयोगकर्ता पृष्ठ को खोलता है, तो उससे अनुरोध करें।
यदि उपयोगकर्ता चाहता है, और अब निहितार्थ, इसे स्टोर कर सकते हैं।

लेकिन तब स्टिवलो की टिप्पणी में शामिल होने के लिए, किस बारे में:

  1. कई डिवाइस का उपयोग
  2. बैकअप
  3. पासवर्ड भूल गए
  4. बहुत आसान कैश समाशोधन

मुझे लगता है कि आपको तर्क की शुरुआत पर पुनर्विचार करना चाहिए। केवल कुछ हालिया और सनसनीखेज घटनाओं के कारण बादल से बचें, एक त्वरित निष्कर्ष है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.