UUID जनरेटर (v4, v7, v1)
RFC 9562 UUID थोक में बनाएँ: रैंडम v4, समय-क्रमित v7, टाइमस्टैम्प v1, Nil और Max। बड़े अक्षर, ब्रेस या बिना हाइफ़न। crypto.getRandomValues इस्तेमाल होता है।
अधिकतम 1000
crypto.getRandomValues से 122 रैंडम बिट। टकराव की संभावना नगण्य है।
UUID जनरेटर क्या है?
UUID (universally unique identifier) 128-बिट की ID है जो 8-4-4-4-12 रूप में 32 हेक्स अंकों में लिखी जाती है। यह टूल RFC 9562 के अनुसार एक बार में 1,000 तक UUID बनाता है: संस्करण 4 (रैंडम), संस्करण 7 (समय-क्रमित), संस्करण 1 (टाइमस्टैम्प), या विशेष Nil और Max मान।
UUID जनरेटर का उपयोग कैसे करें
- संस्करण चुनें (संस्करण 4 आम चुनाव है; डेटाबेस कुंजियों के लिए संस्करण 7)।
- कितने UUID चाहिए तय करें।
- चाहें तो बड़े अक्षर चुनें, हाइफ़न का चयन हटाएँ, या कर्ली ब्रेस { } में लपेटें चुनें।
- नया बैच पाने के लिए फिर से जनरेट करें पर क्लिक करें, फिर सूची कॉपी या डाउनलोड करें।
उदाहरण
Version 7, How many 2
01a16811-eb97-7688-838a-aa989505507e 01a16811-eb97-7689-a2db-f00f7ac48f06
दोनों एक ही मिलीसेकंड टाइमस्टैम्प से शुरू होते हैं; काउंटर दूसरे को पहले के बाद सॉर्ट कराता है। आपके मान अलग होंगे।
UUID जनरेटर का उपयोग कब करें
सामान्य अद्वितीय ID (API संसाधन, फ़ाइल नाम, correlation ID) के लिए v4 इस्तेमाल करें। डेटाबेस प्राइमरी कुंजियों के लिए v7 इस्तेमाल करें, क्योंकि समय-क्रमित मान B-tree इंडेक्स को सघन रखते हैं। जब तक कोई सिस्टम न माँगे v1 से बचें, और UUID को कभी सीक्रेट या एक्सेस टोकन की तरह इस्तेमाल न करें: वे अद्वितीय हैं, गोपनीय नहीं।
UUID जनरेटर कैसे काम करता है
v4: crypto.getRandomValues से 16 रैंडम बाइट; वर्जन निबल 4 पर और दो वैरिएंट बिट 10 पर सेट होते हैं, जिससे 122 रैंडम बिट बचते हैं। v7: पहले 48 बिट मिलीसेकंड में वर्तमान Unix समय (big-endian) हैं, उसके बाद वर्जन, 12-बिट काउंटर (ताकि एक ही मिलीसेकंड में बने UUID भी क्रम में सॉर्ट हों) और 62 रैंडम बिट। v1: 15 अक्टूबर 1582 से 100-नैनोसेकंड अंतरालों की 60-बिट गिनती, 14-बिट क्लॉक सीक्वेंस और 48-बिट नोड ID; टूल आपके MAC पते की जगह मल्टीकास्ट बिट सेट वाला रैंडम नोड इस्तेमाल करता है (जैसा RFC 9562 अनुमति देता है)। v1/v7 का एम्बेडेड टाइमस्टैम्प डिकोड करके सूची के नीचे दिखाया जाता है।
सामान्य उपयोग मामले
- डेटाबेस पंक्तियों या टेस्ट फ़िक्स्चर के लिए प्राइमरी कुंजियाँ बनाना
- लॉग के लिए रिक्वेस्ट या correlation ID बनाना
- टकराव के बिना अपलोड की फ़ाइलों के नाम रखना
- अद्वितीय पहचानकर्ताओं के साथ मॉक डेटा भरना
अक्सर पूछे जाने वाले प्रश्न
क्या दो UUID v4 मान टकरा सकते हैं?
सिद्धांत में हाँ, व्यवहार में नहीं: 122 रैंडम बिट के साथ एक दोहराव की 50% संभावना के लिए आपको लगभग 2.7 × 10^18 UUID बनाने पड़ेंगे।
UUID v4 और v7 में क्या अंतर है?
v4 पूरी तरह रैंडम है। v7 टाइमस्टैम्प से शुरू होता है, इसलिए बाद में बने मान पहले वालों के बाद सॉर्ट होते हैं, जो डेटाबेस इंडेक्स के लिए बेहतर है और आपको बनने का समय पढ़ने देता है।
क्या UUID और GUID एक ही हैं?
हाँ। GUID इसी 128-बिट प्रारूप के लिए Microsoft का नाम है। रजिस्ट्री ब्रेस जैसे Windows-विशिष्ट प्रारूपों के लिए GUID जनरेटर इस्तेमाल करें।
क्या v1 मेरा MAC पता उजागर करता है?
यहाँ नहीं। नोड फ़ील्ड रैंडम बाइट से भरा जाता है और मल्टीकास्ट बिट सेट रहता है जो उसे नॉन-हार्डवेयर चिह्नित करता है।