ज़्यादातर लोग QR कोड को किसी वेबसाइट का हानिरहित शॉर्टकट मानते हैं। अक्सर यह होता भी है। पर QR बस टेक्स्ट का एक डिब्बा है, और वो टेक्स्ट किसी लिंक से कहीं ज़्यादा संवेदनशील हो सकता है। किसी कोड इमेज को पहले मिले "ऑनलाइन QR रीडर" में डालने से पहले, यह जानना ज़रूरी है कि आप क्या सौंप रहे होंगे — और किसे।

एक QR कोड में असल में क्या हो सकता है

किसी इमेज से QR कोड पढ़ें — निजी तौर पर, अपने अपने डिवाइस पर — visual 1
एक QR कोड में असल में क्या हो सकता है

काले-सफ़ेद पैटर्न में सादा टेक्स्ट एनकोड होता है, और परंपरा के अनुसार वो टेक्स्ट कई चीज़ें हो सकता है:

  • एक URL — आम मामला, पर कभी एक निजी या एकल-उपयोग लिंक (पासवर्ड रीसेट, न्योता, ऐसा दस्तावेज़ जो सचमुच सार्वजनिक होने के बजाय "अनलिस्टेड" है)।
  • एक Wi-Fi नेटवर्क और पासवर्ड — राउटर और होटलों में "जुड़ने के लिए स्कैन करें" कोड सचमुच नेटवर्क नाम और पासवर्ड को सादे टेक्स्ट में एनकोड करते हैं।
  • एक कॉन्टैक्ट कार्ड (vCard) — नाम, फ़ोन नंबर, ईमेल, और घर या दफ़्तर का पता।
  • एक लॉगिन या भुगतान टोकन — कुछ ऐप किसी सत्र या ट्रांसफ़र को अधिकृत करने के लिए QR दिखाते हैं; अंदर की स्ट्रिंग असल में एक चाबी है।
  • सादा टेक्स्ट या एक संदेश — जो भी किसी ने एनकोड करना चुना।

इसमें से कुछ भी आपके लिए ख़तरनाक नहीं जब आप उसे अपने अपने डिवाइस पर डिकोड करते हैं। यह तब समस्या बनता है जब डिकोड करने के लिए इमेज को कहीं और भेजना पड़े।

छुपा क़दम: "ऑनलाइन रीडर" आपकी इमेज अपलोड करते हैं

किसी इमेज से QR कोड पढ़ें — निजी तौर पर, अपने अपने डिवाइस पर — visual 2
छुपा क़दम: "ऑनलाइन रीडर" आपकी इमेज अपलोड करते हैं

यह वो हिस्सा है जिसे चूकना आसान है। एक आम ऑनलाइन QR रीडर आपकी इमेज फ़ाइल को अपने सर्वर पर अपलोड करके, वहां डिकोड करके, नतीजा वापस भेजकर काम करता है। मतलब तस्वीर — और कोड जो भी एनकोड करता है — आपके डिवाइस से निकलकर ऐसे हार्डवेयर पर पहुंचती है जो आपके नियंत्रण में नहीं। किसी सार्वजनिक लेख के लिंक के लिए, ठीक है। पर किसी Wi-Fi पासवर्ड, लॉगिन टोकन, या घर के पते वाले कॉन्टैक्ट कार्ड के लिए, आपने बस एक राज़ किसी अजनबी के सर्वर को प्रसारित कर दिया, जहां वो लॉग या कैश हो सकता है, सिर्फ़ वो टेक्स्ट पढ़ने के लिए जो पहले से आपकी स्क्रीन पर था।

आप जांच सकते हैं कि कोई टूल अपलोड करता है या नहीं: फ़ाइल साइज़ के साथ बढ़ते किसी प्रोग्रेस बार पर नज़र रखें, या अपने ब्राउज़र का Network टैब खोलें और देखें कि कोई बड़ा रिक्वेस्ट आपकी इमेज ले जाता है या नहीं। सचमुच के लोकल टूल इनमें से कुछ नहीं करते।

बजाय इसके इसे लोकल रूप से डिकोड करें

प्राइवेसी का सम्मान करने वाला तरीक़ा है कोड को अपने ही ब्राउज़र में डिकोड करना, ताकि इमेज कभी सफ़र न करे।

IMG.DIY का QR Code Reader ठीक यही करता है। आप उसे एक इमेज देते हैं — खींचें, पेस्ट करें, या कोई फ़ाइल चुनें — और यह तस्वीर को एक कैनवस पर बनाकर QR को jsQR लाइब्रेरी से सीधे आपके ब्राउज़र के भीतर डिकोड करता है। कुछ भी अपलोड नहीं होता। कोई अकाउंट नहीं और काम करने वाला कोई सर्वर नहीं, और एक बार पेज लोड हो जाए तो यह नेटवर्क बंद होने पर चलता रहता है। आप इसे ख़ुद साबित कर सकते हैं: टूल लोड करें, एयरप्लेन मोड चालू करें, और एक कोड डिकोड करें — यह फिर भी चलता है, क्योंकि लूप में कभी कोई सर्वर था ही नहीं।

अगर कोड एक URL है, तो टूल आपको एक क्लिक करने योग्य लिंक देता है (rel=nofollow से चिह्नित) ताकि तय करने से पहले आप गंतव्य देख सकें। अगर यह एक Wi-Fi स्ट्रिंग या कॉन्टैक्ट कार्ड है, तो आपको कच्चा टेक्स्ट और एक कॉपी बटन मिलता है — इसे पढ़ें, इस्तेमाल करें, और यह आपकी मशीन पर रहता है।

संवेदनशील कोड के लिए एक समझदार आदत

दो छोटे नियम आपको सुरक्षित रखते हैं:

  1. कार्रवाई से पहले टेक्स्ट देखें। किसी कोड को डिकोड करना आपको गंतव्य या सामग्री आपके डिवाइस के किसी चीज़ से जुड़ने से पहले दिखाता है। यह अकेला ही कई QR-आधारित घोटालों को निष्क्रिय कर देता है, जहां प्रिंट किया कोड किसी शत्रुतापूर्ण जगह की ओर इशारा करने वाले से बदल दिया जाता है।
  2. टूल को राज़ से मिलाएं। किसी सार्वजनिक लिंक के लिए, आप कहां डिकोड करते हैं यह मुश्किल से मायने रखता है। किसी पासवर्ड, टोकन, या किसी के निजी ब्योरे के लिए, इसे लोकल रूप से डिकोड करें ताकि राज़ पहली जगह पर आपके डिवाइस से बाहर जाए ही नहीं।

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