UUID टाइम एक्सट्रैक्टर
UUID v1, v6 और v7 पहचानकर्ताओं से timestamps निकालें और डीकोड करें
इनपुट
आउटपुट
परिणाम
कोई मान नहीं
रीडमी
UUID टाइमस्टैम्प कैसे स्टोर करते हैं?
कई UUID वर्शन अपनी संरचना में सीधे एक टाइमस्टैम्प एम्बेड करते हैं। UUID v1, जिसे RFC 4122 में पेश किया गया था, एक 60-बिट Gregorian टाइमस्टैम्प एनकोड करता है जो 15 अक्टूबर, 1582 से 100-नैनोसेकंड अंतरालों को दर्शाता है। UUID v6 बेहतर सॉर्टेबिलिटी के लिए उन्हीं टाइमस्टैम्प फ़ील्ड को पुनर्व्यवस्थित करता है, और UUID v7, जिसे RFC 9562 में परिभाषित किया गया है, मिलीसेकंड में एक 48-बिट Unix epoch टाइमस्टैम्प स्टोर करता है। ये एम्बेडेड टाइमस्टैम्प उस सटीक क्षण को पुनः प्राप्त करना संभव बनाते हैं जब UUID जेनरेट किया गया था — जो debugging, ऑडिटिंग और फोरेंसिक विश्लेषण के लिए उपयोगी है।
हर UUID में समय की जानकारी नहीं होती। वर्शन 3, 4 और 5 रैंडम डेटा या namespace हैश से प्राप्त होते हैं, इसलिए उनमें कोई पुनः प्राप्त करने योग्य टाइमस्टैम्प नहीं होता। वर्शन 2 (DCE Security) में एक टाइमस्टैम्प शामिल होता है, लेकिन व्यवहार में इसका उपयोग बहुत कम होता है।
टूल का विवरण
यह टूल टाइम-बेस्ड UUID में एम्बेडेड टाइमस्टैम्प को निकालता और डीकोड करता है। कोई भी UUID पेस्ट करें और तुरंत एनकोडेड दिनांक और समय को कई फॉर्मेट में देखें: ISO 8601, UTC, लोकल टाइम, और सेकंड तथा मिलीसेकंड दोनों में Unix टाइमस्टैम्प। यह टूल स्वचालित रूप से UUID वर्शन का पता लगाता है और सही डीकोडिंग एल्गोरिदम लागू करता है।
उदाहरण
UUID v1 इनपुट:
6ba7b810-9dad-11d1-80b4-00c04fd430c8 → 7 अप्रैल, 1998
UUID v7 इनपुट:
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 → 3 मई, 2024
UUID v4 इनपुट (कोई टाइमस्टैम्प नहीं):
550e8400-e29b-41d4-a716-446655440000 → "इस UUID वर्शन में कोई टाइमस्टैम्प नहीं है"
विशेषताएँ
- UUID v1 (Gregorian टाइमस्टैम्प), v6 (पुनः क्रमित Gregorian), और v7 (Unix epoch मिलीसेकंड) को सपोर्ट करता है
- परिणाम ISO 8601, UTC, लोकल टाइम और Unix टाइमस्टैम्प फॉर्मेट में प्रदर्शित करता है
- UUID वर्शन का स्वचालित रूप से पता लगाता है और सही डीकोडिंग विधि चुनता है
- निष्कर्षण का प्रयास करने से पहले UUID फॉर्मेट को वैलिडेट करता है
- उन UUID वर्शन के लिए स्पष्ट संदेश दिखाता है जिनमें टाइमस्टैम्प नहीं होता
यह कैसे काम करता है
प्रत्येक टाइम-बेस्ड UUID वर्शन अपना टाइमस्टैम्प अलग तरीके से स्टोर करता है:
- UUID v1 एक 60-बिट Gregorian टाइमस्टैम्प को तीन फ़ील्ड में विभाजित करता है:
time_low(बिट्स 0–31),time_mid(बिट्स 32–47), औरtime_hi(बिट्स 48–59)। टाइमस्टैम्प 15 अक्टूबर, 1582 से 100-नैनोसेकंड अंतरालों की गणना करता है। - UUID v6 v1 के टाइमस्टैम्प फ़ील्ड को इस प्रकार पुनः क्रमित करता है कि सबसे महत्वपूर्ण बिट्स पहले आएं, जिससे UUID उसी Gregorian epoch का उपयोग करते हुए निर्माण समय के अनुसार स्वाभाविक रूप से सॉर्ट हो जाते हैं।
- UUID v7 एक सरल दृष्टिकोण अपनाता है: पहले 48 बिट्स मिलीसेकंड में एक मानक Unix टाइमस्टैम्प रखते हैं, जिससे निष्कर्षण सीधा और आधुनिक सिस्टम के साथ संगत होता है।
उपयोग के मामले
- डिस्ट्रिब्यूटेड सिस्टम की debugging — UUID को डीकोड करके यह सटीक रूप से निर्धारित करें कि कोई रिकॉर्ड या इवेंट कब बनाया गया था
- ऑडिट और फोरेंसिक — उन डेटाबेस में निर्माण टाइमस्टैम्प सत्यापित करें जो प्राइमरी की के रूप में टाइम-बेस्ड UUID का उपयोग करते हैं
- माइग्रेशन प्लानिंग — सिस्टम के बीच माइग्रेट करने से पहले डेटा वितरण और आयु को समझने के लिए UUID टाइमस्टैम्प का विश्लेषण करें