Ekstraktor czasu UUID
Wyodrębnij i dekoduj znaczniki czasu z identyfikatorów UUID v1, v6 i v7
Wejście
Wyjście
Wynik
Brak wartości
Instrukcja
Jak UUID przechowują znaczniki czasu?
Kilka wersji UUID osadza znacznik czasu bezpośrednio w swojej strukturze. UUID v1, wprowadzony w RFC 4122, koduje 60-bitowy znacznik czasu gregoriańskiego reprezentujący interwały 100-nanosekund od 15 października 1582 roku. UUID v6 przestawia te same pola znacznika czasu dla lepszej sortowalności, a UUID v7, zdefiniowany w RFC 9562, przechowuje 48-bitowy znacznik czasu Unix epoch w milisekundach. Te osadzone znaczniki czasu umożliwiają odtworzenie dokładnego momentu wygenerowania UUID — przydatne przy debugowaniu, audytowaniu i analizie forensycznej.
Nie każdy UUID zawiera informacje o czasie. Wersje 3, 4 i 5 są wyprowadzane z losowych danych lub skrótów przestrzeni nazw, dlatego nie zawierają żadnego możliwego do odzyskania znacznika czasu. Wersja 2 (DCE Security) zawiera znacznik czasu, ale w praktyce jest rzadko stosowana.
Opis narzędzia
To narzędzie wyodrębnia i dekoduje znacznik czasu osadzony w UUID opartych na czasie. Wklej dowolny UUID i natychmiast zobacz zakodowaną datę i godzinę w wielu formatach: ISO 8601, UTC, czas lokalny oraz znaczniki czasu Unix w sekundach i milisekundach. Narzędzie automatycznie wykrywa wersję UUID i stosuje właściwy algorytm dekodowania.
Przykłady
Dane wejściowe UUID v1:
6ba7b810-9dad-11d1-80b4-00c04fd430c8 → 7 kwietnia 1998
Dane wejściowe UUID v7:
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 → 3 maja 2024
Dane wejściowe UUID v4 (brak znacznika czasu):
550e8400-e29b-41d4-a716-446655440000 → „Ta wersja UUID nie zawiera znacznika czasu"
Funkcje
- Obsługuje UUID v1 (znacznik czasu gregoriański), v6 (przestawiony gregoriański) i v7 (Unix epoch w milisekundach)
- Wyświetla wyniki w formatach ISO 8601, UTC, czas lokalny oraz znacznik czasu Unix
- Automatycznie wykrywa wersję UUID i wybiera właściwą metodę dekodowania
- Weryfikuje format UUID przed próbą wyodrębnienia danych
- Wyświetla czytelny komunikat dla wersji UUID, które nie zawierają znaczników czasu
Jak to działa
Każda wersja UUID oparta na czasie przechowuje swój znacznik czasu w inny sposób:
- UUID v1 dzieli 60-bitowy znacznik czasu gregoriańskiego na trzy pola:
time_low(bity 0–31),time_mid(bity 32–47) itime_hi(bity 48–59). Znacznik czasu zlicza interwały 100-nanosekund od 15 października 1582 roku. - UUID v6 zmienia kolejność pól znacznika czasu z v1 tak, aby najbardziej znaczące bity były na początku, co sprawia, że UUID są naturalnie sortowalne według czasu utworzenia przy użyciu tej samej epoki gregoriańskiej.
- UUID v7 stosuje prostsze podejście: pierwsze 48 bitów przechowuje standardowy znacznik czasu Unix w milisekundach, co sprawia, że wyodrębnianie jest proste i zgodne z nowoczesnymi systemami.
Przypadki użycia
- Debugowanie systemów rozproszonych — określenie dokładnego momentu utworzenia rekordu lub zdarzenia poprzez dekodowanie przypisanego do niego UUID
- Audyt i analiza forensyczna — weryfikacja znaczników czasu utworzenia w bazach danych, które używają UUID opartych na czasie jako kluczy głównych
- Planowanie migracji — analiza znaczników czasu UUID w celu zrozumienia rozkładu i wieku danych przed migracją między systemami