निर्धारक UUID v5 मान बनाएँ
वर्ज़न 5 UUID एक नेमस्पेस UUID और एक नाम से SHA-1 द्वारा निकाला जाता है। जो भी उसी नेमस्पेस और उसी नाम का हैश बनाएगा, उसे बिल्कुल वही UUID मिलेगा, इसलिए ID को सहेजने के बजाय दोबारा गणना की जा सकती है।
हल किया हुआ उदाहरण
- नेमस्पेस (UUID)
- DNS (6ba7b810-9dad-11d1-80b4-00c04fd430c8)
- नाम
- example.com
- परिणाम
- cfbff0d1-9375-5685-968c-48ce8b15ae17
- नेमस्पेस (UUID)
- DNS (6ba7b810-9dad-11d1-80b4-00c04fd430c8)
- नाम
- Example.com
- परिणाम
- a1feb884-07f5-5a14-8edb-cb659a7fbadc
यह कैसे काम करता है
- नेमस्पेस के 16 बाइट नाम के UTF-8 बाइट के साथ जोड़े जाते हैं और SHA-1 से हैश किए जाते हैं। वर्ज़न (5) और वेरिएंट बिट सेट करने के बाद डाइजेस्ट के पहले 16 बाइट UUID बन जाते हैं।
- RFC 9562 में DNS नाम, URL, ISO OID और X.500 विशिष्ट नामों के लिए नेमस्पेस पहले से तय हैं। आप अपना कोई भी UUID निजी नेमस्पेस के रूप में इस्तेमाल कर सकते हैं।
- नामों की तुलना बाइट-दर-बाइट होती है: अक्षरों का केस, स्पेस और अंत का स्लैश परिणाम बदल देते हैं, इसलिए पहले नामों को सामान्यीकृत करें। आउटपुट अनुमान योग्य होता है, इसलिए UUID v5 को कभी सीक्रेट के रूप में इस्तेमाल न करें।
एक बार में 1-100 UUID उत्पन्न करें
DNS नेमस्पेस: 6ba7b810-9dad-11d1-80b4-00c04fd430c8 (डिफ़ॉल्ट)
हैश करने के लिए नाम (जैसे डोमेन नाम, ईमेल, आदि)
UUID के बारे में
UUID v1: समय-आधारित UUID जिसमें टाइमस्टैम्प और UUID उत्पन्न करने वाले कंप्यूटर का MAC पता शामिल है। जब आपको यह जानने की आवश्यकता हो कि UUID कब बनाया गया था तो उपयोगी है।
UUID v4: यादृच्छिक रूप से उत्पन्न UUID। यह सबसे अधिक उपयोग किया जाने वाला संस्करण है और न्यूनतम सूचना रिसाव के साथ अच्छी विशिष्टता प्रदान करता है।
UUID v5: SHA-1 हैशिंग का उपयोग करते हुए नाम-आधारित UUID। एक ही नेमस्पेस और नाम दिए जाने पर, आपको हमेशा वही UUID मिलेगा। निर्धारक UUID उत्पन्न करने के लिए उपयोगी है।