रैंडम टोकन जनरेटर
सेशन, पासवर्ड रीसेट, CSRF और इनवाइट के लिए क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडम टोकन बनाएँ। Hex, Base64url, Base32 या अक्षर-अंक; डिफ़ॉल्ट 256 बिट।
वैकल्पिक, जैसे sk_live_ या myapp_। इससे की पहचानने में आसान होती हैं और लीक हुए कोड में जल्दी पकड़ी जाती हैं।
256 बिट एन्ट्रॉपी · हर मान में 64 अक्षर
crypto.getRandomValues से स्थानीय रूप से बनाया गया; कुछ भी भेजा या सहेजा नहीं जाता। सीक्रेट को एनवायरनमेंट वेरिएबल या सीक्रेट मैनेजर में रखें, सोर्स कोड में कभी नहीं।
रैंडम टोकन जनरेटर क्या है?
पासवर्ड-रीसेट लिंक, ईमेल सत्यापन, इनवाइट कोड, CSRF सुरक्षा, सेशन ID या किसी भी एक-बार के सीक्रेट के लिए अनुमान न लगाए जा सकने वाले रैंडम टोकन बनाएँ। डिफ़ॉल्ट 32 रैंडम बाइट (256 बिट) है जो 64 hex अक्षरों के रूप में दिखता है; आप URL-सुरक्षित Base64url, Base32, Base64 या अक्षर-अंक आउटपुट चुन सकते हैं।
रैंडम टोकन जनरेटर का उपयोग कैसे करें
- फ़ॉर्मेट चुनें: hex सबसे आम है, Base64url छोटा है और URL में सुरक्षित।
- रैंडम बाइट की संख्या सेट करें (या अक्षर-अंक फ़ॉर्मेट के लिए अक्षरों में लंबाई)।
- कितने टोकन बनाने हैं यह कितने में चुनें और नए सेट के लिए फिर से जनरेट करें पर क्लिक करें।
- टोकन कॉपी करें।
उदाहरण
Format Base64url, 32 random bytes, How many 1
81u4aRrBPjZmdbKks_Gh_FDt4AKsSY4FQllDH0mkThk
256 बिट, 43 अक्षर। रैंडम — आपके अलग होंगे।
रैंडम टोकन जनरेटर का उपयोग कब करें
इन टोकन का उपयोग वहाँ करें जहाँ मान का कब्ज़ा ही पहुँच देता है और उसका अनुमान नहीं लगना चाहिए। जिन मानों के भीतर संरचना या समाप्ति चाहिए (claims, हस्ताक्षर) उनके लिए JWT इस्तेमाल करें; जिन डेटाबेस ID को गोपनीय होने की ज़रूरत नहीं, उनके लिए UUID सरल हैं।
रैंडम टोकन जनरेटर कैसे काम करता है
टूल ब्राउज़र के CSPRNG (crypto.getRandomValues) से N रैंडम बाइट माँगता है और उन्हें एन्कोड करता है: hex में हर बाइट के दो अक्षर, Base64url (RFC 4648 §5) बिना पैडिंग के A-Z a-z 0-9 - _ इस्तेमाल करता है, Base32 A-Z 2-7 इस्तेमाल करता है। एन्ट्रॉपी वाली पंक्ति यादृच्छिकता के बिट (8 × बाइट) और परिणामी लंबाई दिखाती है, और 128 बिट से कम होने पर चेतावनी देती है।
सामान्य उपयोग मामले
- पासवर्ड-रीसेट और ईमेल-सत्यापन लिंक
- सेशन आइडेंटिफ़ायर और CSRF टोकन
- इनवाइट या एक-बार के डाउनलोड कोड
- webhook सीक्रेट और साझा साइनिंग key
सुरक्षा नोट
टोकन को पासवर्ड की तरह मानें: उन्हें समाप्ति दें, इस्तेमाल के बाद अमान्य करें, और संभव हो तो सर्वर पर केवल हैश रखें।
अक्सर पूछे जाने वाले प्रश्न
Hex या Base64url?
बाइट की संख्या समान हो तो दोनों में यादृच्छिकता बराबर होती है। Base64url लगभग एक-तिहाई छोटा है (32 बाइट के लिए 43 बनाम 64 अक्षर) और URL में सुरक्षित है; hex पढ़ने और तुलना करने में आसान है।
मुझे कितने बाइट चाहिए?
सुरक्षा टोकन के लिए आमतौर पर न्यूनतम 16 बाइट (128 बिट) है; 32 बाइट (256 बिट) आरामदायक मार्जिन देते हैं।
क्या ब्राउज़र में टोकन बनाना सुरक्षित है?
हाँ। crypto.getRandomValues क्रिप्टोग्राफ़िक रूप से सुरक्षित जनरेटर है, और कुछ भी सर्वर को नहीं भेजा जाता। जो टोकन आपका एप्लिकेशन उपयोगकर्ताओं को जारी करता है उन्हें अपने सर्वर पर उसी तरह के CSPRNG से बनाएँ।