पासवर्ड वाले लिंक की सुरक्षा — क्लिक करने पर क्या होता है
आप अपने छोटे लिंक में पासवर्ड जोड़ सकते हैं। हम बिना किसी तकनीकी शब्दावली के यह दिखाते हैं कि पर्दे के पीछे क्या हो रहा है — और यह क्यों करना वास्तव में सार्थक है।
पासवर्ड वाले लिंक के बारे में आधे ट्यूटोरियल इस वाक्य से शुरू होते हैं कि यह "सुरक्षा की एक अतिरिक्त परत" है। और यहीं समाप्त हो जाते हैं। मेरी राय में, यह सबसे कम महत्वपूर्ण बात है जो इसके बारे में कही जा सकती है।
क्योंकि "सुरक्षा की परत" (security layer) कुछ भी स्पष्ट नहीं करती है। यह आपको यह नहीं बताती कि उस पासवर्ड के साथ क्या हो रहा है, उसे कौन देख सकता है, या वह कब तक मान्य है। और ये वे एकमात्र प्रश्न हैं जो "पासवर्ड जोड़ें" पर क्लिक करने से पहले खुद से पूछना ज़रूरी है।
तो क्रमवार।
लिंक का पासवर्ड गेट पर लगे ताले जैसा नहीं है
लोग कल्पना करते हैं कि पासवर्ड लिंक को पूरी तरह से सुरक्षित कर देता है। ऐसा नहीं है। पासवर्ड वाले लिंक की सुरक्षा एक कॉन्सर्ट के टिकट की तरह काम करती है: जिसके पास टिकट है, वही अंदर जा सकता है। जो इसे किसी और को दे देगा, वह भी किसी और को अंदर आने दे देगा।
यह एक दोष की तरह लगता है। ऐसा नहीं है। बस यह जानने की ज़रूरत है कि इस तंत्र का उपयोग किस लिए किया जाता है।
तीन स्थितियाँ, जिनमें यह वास्तव में उपयोगी है:
प्रीमियम ग्राहकों के लिए मूल्य सूची या दुनिया में जाने से पहले बीटा संस्करण में दस्तावेज़। बिना पासवर्ड के ऐसा लिंक देर-सवेर गूगल पर आ जाएगा या एक हाथ से दूसरे हाथ में पहुँच जाएगा।
समाप्ति तिथि के साथ सामग्री। प्रस्ताव केवल शुक्रवार के लिए। सम्मेलन की सामग्री विशेष रूप से प्रतिभागियों के लिए। पासवर्ड लिंक से नियंत्रित प्रवेश बनाता है — आप जानते हैं कि किसी को यह आपसे मिला है, इसे गलती से नहीं पाया गया।
और वह चीज़ जिसे आप पूरी तरह से सार्वजनिक रूप से डाल रहे हैं, लेकिन आप उस पर नज़र रखना चाहते हैं। लिंक घूम सकता है। बिना पासवर्ड के वैसे भी कोई प्रवेश नहीं कर पाएगा।
और अब वह, जिसे इस गाइड में छोड़ना नहीं चाहिए था
आप फ़ॉर्म में पासवर्ड टाइप करते हैं। उसी क्षण वह गायब हो जाता है। सचमुच। आपने "tajne123" सेट किया है, यह पठनीय रूप में अस्तित्वहीन हो जाता है, इससे पहले कि आप बटन छोड़ सकें।
डेटाबेस में क्या बचता है? पासवर्ड नहीं। उसके बाद फिंगरप्रिंट। तकनीकी रूप से: hash। वर्णों की एक श्रृंखला, जो आपके पासवर्ड से तभी मेल खाती है जब कोई बिल्कुल वही टाइप करता है जो आप करते हैं। यह अपने आप में कुछ भी प्रकट नहीं करता है।
मैं इसे सीधे कहूँगा, क्योंकि यह महत्वपूर्ण है: मैं, सेवा प्रदाता, आपका पासवर्ड पढ़ने में असमर्थ हूँ। इसलिए नहीं कि मैं विनम्र हूँ। इसलिए क्योंकि भौतिक रूप से पढ़ने के लिए कुछ भी नहीं है। यदि कोई डेटाबेस में सेंध लगाता है, तो वह इन फिंगरप्रिंट्स का एक ढेर ले जाएगा और बस इतना ही।
यह गणना करने वाला एल्गोरिदम जानबूझकर धीमा है। मुझे पता है कि "धीमा" एक शिकायत की तरह लगता है, लेकिन यह एक लाभ है। बात यह है कि जिसने डेटाबेस चुराया है, उसे एक पासवर्ड का अनुमान लगाने के लिए बेतहाशा अधिक समय देना पड़े। हम यहाँ वर्षों की बात कर रहे हैं, सेकंडों की नहीं।
दूसरी तरफ से क्लिक
कोई आपका लिंक प्राप्त करता है और उस पर क्लिक करता है। सीधे लक्ष्य तक पहुँचने के बजाय, उसे यह स्क्रीन दिखाई देती है: "यह लिंक पासवर्ड से सुरक्षित है", एक इनपुट फ़ील्ड, और एक बटन।
वह टाइप करता है। सर्वर द्वारा टाइप किए गए डेटा की तुलना सहेजे गए फिंगरप्रिंट से की जाती है। क्या यह मेल खाता है? उसे एक दिन के लिए वैध सत्र टोकन (session token) प्राप्त होता है। अगले 24 घंटों तक, वह बिना कुछ भी टाइप किए लिंक पर वापस आ सकता है। उसे याद रखने की ज़रूरत नहीं है, उसे संघर्ष करने की ज़रूरत नहीं है।
सहमत नहीं हैं? गलती है। एक ही IP पते से पांच गलतियाँ और प्रवेश पांच मिनट के लिए ब्लॉक हो जाता है। वह बॉट जो क्रमवार पासवर्ड आज़माने की कोशिश कर रहा है, दीवार से टकराकर वापस आ जाएगा।
यहाँ बस क्या नहीं है
हम पासवर्ड को खुले टेक्स्ट के रूप में सहेजते नहीं हैं। कहीं भी नहीं। यहाँ तक कि लॉग्स में भी नहीं, जिन्हें मैं त्रुटियों की खोज करते समय देखता हूँ।
हम ईमेल के माध्यम से पासवर्ड नहीं भेजते हैं। इसका मतलब है कि यदि कोई अपना पासवर्ड भूल जाता है, तो मैं उसे नहीं भेज पाऊंगा, क्योंकि मुझे वह पता नहीं है। आपको इसे स्वयं उसी चैनल से भेजना होगा जिसका उपयोग पिछली बार किया गया था।
और हम पासवर्ड बाहर साझा नहीं करते हैं। कोई भी एनालिटिक्स, कोई मार्केटिंग, कोई AB इन डेटा को नहीं छूता है। (यह वास्तव में एक सिद्धांत है जो पूरे cutty.dev में लागू होता है, न कि केवल यहाँ।)
दो आदतें, जो अंतर पैदा करती हैं
पहला: अपने मन से पासवर्ड न बनाएं। कंपनी का नाम प्लस स्थापना का वर्ष आपको जानने वाले हर किसी के लिए एक उपहार है। ब्राउज़र में जेनरेटर एक सेकंड में कुछ बेहतर परिणाम दे देगा।
दूसरा, अधिक महत्वपूर्ण: पासवर्ड को उसी चैनल से न भेजें जिससे लिंक भेजा गया है। क्या लिंक ईमेल से गया है? तो पासवर्ड SMS द्वारा भेजें। या इसके विपरीत। इसका अर्थ यह है कि केवल एक इनबॉक्स पर कब्जा करने से किसी के पास पूरी जानकारी नहीं पहुँचती।
एक छोटी सी बात, जिसके बारे में बहुत कम लोग जानते हैं: आप एक ही पते पर ले जाने वाले कई लिंक बना सकते हैं, लेकिन अलग-अलग पासवर्ड के साथ। आप पाँच लोगों को एक्सेस देते हैं, प्रत्येक को एक अलग लिंक। क्या किसी एक को विदा करना है? आप उसके लिंक को ब्लॉक कर देते हैं, बाकी को पता भी नहीं चलेगा।
बिना नया लिंक बनाए आप पासवर्ड बदल सकते हैं। पैनल, "Edytuj", नया पासवर्ड। ध्यान दें: सभी सक्रिय 24-घंटे के सत्र तुरंत समाप्त हो जाते हैं। प्रत्येक उपयोगकर्ता को पासवर्ड फिर से दर्ज करना होगा।
सीमा, जिसके बारे में समय रहते जानना ज़रूरी है
आइए कॉन्सर्ट टिकट पर वापस चलते हैं। पासवर्ड सर्च इंजन और आकस्मिक मेहमानों से सुरक्षा प्रदान करता है। यह उस व्यक्ति से सुरक्षा नहीं करता जो पासवर्ड जानता है और उसे दुनिया के साथ साझा करने का निर्णय लेता है।
यदि आपकी पटकथा कुछ इस तरह है कि "इसे केवल यही एक व्यक्ति देखना चाहिए और कोई और नहीं", तो केवल पासवर्ड पर्याप्त नहीं है। यहाँ आपको खातों, लॉगिन और प्राधिकरण (authorization) की आवश्यकता है। अलग लीग, अलग समस्या।
लेकिन हाथ ऊपर उठाएं, आप वास्तव में कितनी बार ऐसी स्थिति का सामना करते हैं? मेरे अनुभव में, यह दुर्लभ है। अधिकांश मामलों में, बात केवल साधारण "मैं नहीं चाहता कि सड़क से कोई यहाँ आए" की होती है। और इस तर्क के लिए यह पर्याप्त है।
यदि आप देखना चाहते हैं कि यह अंदर से कैसा दिखता है — लिंक बनाते समय "Advanced options" का विस्तार करें और "Add password" को चुनें। बाकी सब अपने आप हो जाता है।