2024-01-02: Site is back on track, self-hosted on a rpi because you get the Internet you fund. 2025-02-06: Oh well, some power grid issues caused the rpi to reboot, I really should configure uwsgi to restart automatically --'
| Version | 3 |
| Variant | specified in RFC 4122 |
| urn | urn:uuid:e902893a-9d22-3c7e-a7b8-d6e313b71d9f |
| Hexdump | e902893a9d223c7ea7b8d6e313b71d9f |
| Bytes | ΞβΓ«:Β₯"<~ΒΊββΟβββΖ |
| UUIDv3 | version (3) + MD5(namespace,payload) |
| Hash algorithm | MD5 |
| (would-be) MAC Address | d6e313b71d9f |
| (would-be) is_local bit | False |
| (would-be) is_multicast bit | True |
| (would-be) MAC Manufacturer | None |
| (would-be) MAC Date | None |
Seen in RFC 4122
Counts : rfc4122:1
RFC 4122 A UUID URN Namespace July 2005
uuid_t NameSpace_DNS = { /* 6ba7b810-9dad-11d1-80b4-00c04fd430c8 */
0x6ba7b810,
0x9dad,
0x11d1,
0x80, 0xb4, 0x00, 0xc0, 0x4f, 0xd4, 0x30, 0xc8
};
/* puid -- print a UUID */
void puid(uuid_t u)
{
int i;
printf("%8.8x-%4.4x-%4.4x-%2.2x%2.2x-", u.time_low, u.time_mid,
u.time_hi_and_version, u.clock_seq_hi_and_reserved,
u.clock_seq_low);
for (i = 0; i < 6; i++)
printf("%2.2x", u.node[i]);
printf("\n");
}
/* Simple driver for UUID generator */
void main(int argc, char **argv)
{
uuid_t u;
int f;
uuid_create(&u);
printf("uuid_create(): "); puid(u);
f = uuid_compare(&u, &u);
printf("uuid_compare(u,u): %d\n", f); /* should be 0 */
f = uuid_compare(&u, &NameSpace_DNS);
printf("uuid_compare(u, NameSpace_DNS): %d\n", f); /* s.b. 1 */
f = uuid_compare(&NameSpace_DNS, &u);
printf("uuid_compare(NameSpace_DNS, u): %d\n", f); /* s.b. -1 */
uuid_create_md5_from_name(&u, NameSpace_DNS, "www.widgets.com", 15);
printf("uuid_create_md5_from_name(): "); puid(u);
}
Appendix B. Appendix B - Sample Output of utest
uuid_create(): 7d444840-9dc0-11d1-b245-5ffdce74fad2
uuid_compare(u,u): 0
uuid_compare(u, NameSpace_DNS): 1
uuid_compare(NameSpace_DNS, u): -1
uuid_create_md5_from_name(): e902893a-9d22-3c7e-a7b8-d6e313b71d9f
Leach, et al. Standards Track [Page 29]