टोकन असल में क्या होता है
जब कोई bot बनाया जाता है, तो Telegram एक ऐसी स्ट्रिंग देता है जिसमें एक संख्या, एक कोलन और उसके बाद वर्णों की एक लंबी व रैंडम कड़ी होती है। आपका सॉफ़्टवेयर Telegram को जो भी अनुरोध भेजता है, उसके साथ यह स्ट्रिंग जाती है, और Telegram इसी से तय करता है कि अनुरोध वाकई आपके bot से आया है या नहीं।
इसमें न कोई दूसरा सुरक्षा चरण होता है, न अलग पासवर्ड। यह टोकन ही प्रमाणीकरण का पूरा आधार है, इसलिए इसे संभालने का तरीका bot की किसी भी दूसरी सेटिंग से ज़्यादा मायने रखता है।
कोलन से पहले की संख्या bot की अपनी आईडी होती है और यह गोपनीय नहीं होती। उसके बाद आने वाली कड़ी गोपनीय होती है।
आपका टोकन पाने वाला व्यक्ति क्या कर सकता है
वह सब कुछ, जो आपका bot कर सकता है, और लोग अक्सर इसी खतरे को कम समझते हैं। अगर bot आपके चैनल में एडमिन है, तो टोकन पाने वाला कोई अनजान व्यक्ति आपकी ओर से पोस्ट कर सकता है, मैसेज मिटा सकता है और सदस्यों को हटा सकता है। वह वह सब कुछ भी पढ़ सकता है जो bot को मिलता है। किसी ग्रुप में इसका मतलब वे मैसेज हैं जिन्हें देखने की अनुमति bot को दी गई है।
बाहर से इसमें कुछ भी हमले जैसा नहीं दिखता। ऐसा लगता है मानो आपका bot अजीब तरह से काम कर रहा हो। इसी वजह से लीक हुए टोकन का पता अक्सर देर से चलता है, पहली अजीब पोस्ट पर नहीं, बल्कि तीसरी पर।
नुकसान केवल आगे होने वाली घटनाओं तक सीमित नहीं रहता। जिस bot ने आपके सदस्यों को स्कैम लिंक भेज दिया, उसने वह भरोसा गंवा दिया जिसे बनाने में आपको एक साल लगा था, और बाद में कितनी भी सफाई देने पर वह पूरा भरोसा वापस नहीं आता।
टोकन कहां लीक होते हैं
लगभग कभी भी Telegram के ज़रिए नहीं। वे मदद मांगने के लिए साझा किए गए स्क्रीनशॉट में, सार्वजनिक रिपॉज़िटरी में डाले गए कोड में, ऐसे डेवलपर को भेजे गए मैसेज में जो बाद में प्रोजेक्ट छोड़ देता है, या सपोर्ट चैट में किसी ऐसे व्यक्ति के साथ साझा करने पर लीक होते हैं जिसने विनम्रता से इसे मांग लिया हो।
हर बार ढर्रा एक ही होता है: टोकन को गोपनीय जानकारी के बजाय एक सामान्य सेटिंग समझ लिया गया। वह कलर स्कीम के पास किसी कॉन्फ़िग फ़ाइल में रखा होता है, इसलिए उसे भी कलर स्कीम जितनी ही सावधानी के साथ इधर से उधर कॉपी किया जाता है।
इनमें सार्वजनिक रिपॉज़िटरी सबसे आम वजह हैं और इन्हें रोकना भी सबसे आसान है। टोकन जैसी दिखने वाली किसी भी चीज़ को एनवायरनमेंट वेरिएबल में रखना चाहिए, उस फ़ाइल में कभी नहीं जिसे आप कमिट करते हैं।
टोकन लीक हो जाए तो क्या करें
उसे रद्द करें। BotFather में bot के लिए नया टोकन बनाते ही पुराना टोकन तुरंत अमान्य हो जाता है, और पुरानी स्ट्रिंग का इस्तेमाल करने वाली हर चीज़ काम करना बंद कर देती है। पहले यह करें, उसके बाद पता लगाएं कि वह लीक कैसे हुआ, क्रम यही होना चाहिए।
फिर देखें कि उसके बाहर रहने के दौरान क्या हुआ: आपके चैनल की हाल की पोस्ट, सदस्य सूची से हाल में हटाए गए लोग और bot द्वारा भेजी गई ऐसी कोई भी चीज़ जो आपने नहीं लिखी थी। टोकन रद्द करने से दरवाज़ा बंद हो जाता है, लेकिन उससे पहले जो भीतर आ चुका है, उसका असर खत्म नहीं होता।
किसी प्लेटफ़ॉर्म को इसे कैसे सुरक्षित रखना चाहिए
अगर आप अपना टोकन किसी सेवा को देते हैं, तो उसे डेटाबेस में सादे टेक्स्ट के रूप में रखने के बजाय संग्रहित अवस्था में एन्क्रिप्ट किया जाना चाहिए, और वह कभी भी किसी लॉग लाइन में दिखाई नहीं देना चाहिए। BotLaunch पर bot token और अन्य संवेदनशील डेटा को AES-256 से संग्रहित अवस्था में एन्क्रिप्ट किया जाता है, और आप अपना सेटअप खोए बिना BotFather से किसी भी समय टोकन रद्द करके उसकी जगह नया टोकन लगा सकते हैं।
कुछ भी पेस्ट करने से पहले किसी भी प्लेटफ़ॉर्म से यह सवाल पूछना बिल्कुल उचित है। जो प्लेटफ़ॉर्म इसका साफ़ जवाब नहीं दे सकता, वह अपने बारे में काफ़ी कुछ बता चुका है।
आपको इसकी बिल्कुल ज़रूरत कब नहीं होती
ज़्यादातर लोगों को कभी टोकन इस्तेमाल ही नहीं करना पड़ता। BotLaunch पर आप साझा bot को अपने चैनल में एडमिन के रूप में जोड़ते हैं और वेब से मॉड्यूल चालू करते हैं, इसलिए न कोई bot बनाना पड़ता है, न टोकन संभालना पड़ता है। अपने ब्रांड वाला bot कनेक्ट करना, जिसके लिए टोकन की ज़रूरत होती है, उन लोगों के लिए पेड प्लान का विकल्प है जो उस पर अपना नाम चाहते हैं।