Skip to main content
CheckTown
जेनरेटर

UUID जेनरेटर: किसी भी प्रोजेक्ट के लिए अद्वितीय पहचानकर्ता बनाएँ

प्रकाशित 5 मिनट का पठन
इस लेख में

UUID क्या है?

एक UUID (Universally Unique Identifier) एक 128-बिट पहचानकर्ता है जिसके किसी केंद्रीय प्राधिकरण के बिना स्थान और समय के पार अद्वितीय होने की गारंटी होती है। UUID को 5 समूहों में 32 हेक्साडेसिमल अंकों के रूप में हाइफ़न से अलग करके प्रारूपित किया जाता है: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx।

UUID के कई संस्करण होते हैं, जिनमें से हर एक अलग तरीके से जनरेट होता है। संस्करण 4 (रैंडम) सबसे व्यापक रूप से उपयोग किया जाता है -- यह 122 रैंडम बिट जनरेट करता है, जिससे टकराव खगोलीय रूप से असंभव हो जाता है (एक टकराव की 50% संभावना के लिए आपको 85 वर्षों तक प्रति सेकंड 1 अरब UUID जनरेट करने पड़ेंगे)।

UUID निर्माण कैसे काम करता है

UUID v4 क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडम निर्माण का उपयोग करता है।

  • रैंडम बिट -- CSPRNG का उपयोग करके 122 रैंडम बिट जनरेट किए जाते हैं
  • संस्करण चिह्नन -- संस्करण 4 को दर्शाने के लिए तीसरे समूह के बिट 12-15 को 0100 पर सेट किया जाता है
  • वेरिएंट चिह्नन -- RFC 4122 वेरिएंट को दर्शाने के लिए चौथे समूह के बिट 6-7 को 10 पर सेट किया जाता है

निःशुल्क आज़माएँ — कोई साइनअप आवश्यक नहीं

UUID जनरेट करें →

UUID का उपयोग कब करें

UUID वितरित सिस्टमों और डेटाबेस के लिए पसंदीदा पहचानकर्ता प्रकार हैं।

  • डेटाबेस प्राथमिक कुंजियाँ -- मर्ज के दौरान ID टकराव से बचने के लिए वितरित सिस्टमों में UUID प्राथमिक कुंजियों का उपयोग करें
  • सत्र टोकन -- सत्र पहचानकर्ताओं और अस्थायी टोकनों के लिए UUID जनरेट करें
  • फ़ाइल नामकरण -- उपयोगकर्ता अपलोड और निर्मित संपत्तियों के लिए अद्वितीय फ़ाइल नाम बनाने हेतु UUID का उपयोग करें

अक्सर पूछे जाने वाले सवाल

UUID v1, v3, v4 और v5 में क्या अंतर है?

v1 समय-आधारित होता है और इसमें MAC पता शामिल होता है, जिससे इसे ट्रेस किया जा सकता है। v3 और v5 नियतात्मक होते हैं -- ये एक नेमस्पेस और नाम को हैश करके हर बार समान UUID बनाते हैं (v3 MD5 का उपयोग करता है, v5 SHA-1 का)। v4 रैंडम होता है और सामान्य-उद्देश्य अद्वितीय ID के लिए सबसे अधिक इस्तेमाल किया जाता है। v7 (उभरता मानक) क्रमबद्ध किए जा सकने वाले UUID के लिए टाइमस्टैम्प और रैंडमनेस को जोड़ता है।

डेटाबेस प्राथमिक कुंजियों के लिए मुझे UUID का उपयोग करना चाहिए या ऑटो-इंक्रीमेंट पूर्णांकों का?

ऑटो-इंक्रीमेंट पूर्णांक सरल और अधिक भंडारण-कुशल होते हैं। UUID वितरित सिस्टमों, कई स्रोतों से डेटा मर्ज करने, क्रम की जानकारी लीक किए बिना URL में ID उजागर करने, और डेटाबेस में डालने से पहले क्लाइंट-साइड ID निर्माण सक्षम करने के लिए बेहतर हैं। एकल-सर्वर एप्लिकेशनों के लिए, ऑटो-इंक्रीमेंट अक्सर पर्याप्त होता है।

क्या UUID वाकई अद्वितीय होते हैं?

UUID v4 के पास 2^122 संभावित मान होते हैं -- लगभग 5.3 × 10^36। दो समान UUID जनरेट होने की संभावना इतनी कम है कि किसी भी व्यावहारिक एप्लिकेशन के लिए यह प्रभावी रूप से शून्य है। जन्मदिन विरोधाभास के अनुसार, एक टकराव की 50% संभावना के लिए आपको लगभग 2.71 क्विंटिलियन UUID की ज़रूरत होगी।

संबंधित टूल