Mam następujące GUID:Dlaczego binarny GUID różni się od zwykłej reprezentacji
AAB13E97-449B-4D5B-BDE2-AC479C31B782
Korzystanie System.Guid + DbLinq + SQLite do przechowywania go dodaje pole jest dodawane do bazy danych.
973EB1AA-9B44-5B4D-BDE2-AC479C31B782
(Kreski dodana dla jasności)
widzę, że ostatnie 8 bajtów są w tej samej kolejności, a 3 pierwsze grupy są odwrócone, ale nie rozumiem dlaczego.
"Dlaczego, na litość, zaprojektowali to w ten sposób?" - domyślam się, że pierwotnie GUIDy V1 utrzymywały adres MAC w polu Data4. Historycznie big-endian został zdefiniowany jako standardowy bajt sieciowy i był używany w wielu sprawach związanych z siecią, takich jak adresy IP, adresy MAC itp. –
Z Wikipedii: 'Wersja 1 (adres MAC) Koncepcyjnie, oryginał (wersja 1) Schemat generacji dla UUID polegał na połączeniu wersji UUID z adresem MAC komputera, który generuje UUID, oraz z liczbą interwałów 100-nanosekundowych od czasu przyjęcia kalendarza gregoriańskiego na Zachodzie. System ten został skrytykowany, ponieważ nie jest wystarczająco "nieprzejrzysty"; ujawnia zarówno tożsamość komputera, który wygenerował UUID, jak i czas, w którym to zrobił " –