Subject: [Rats] UEID device identifier and RFC 9039

From: Laurence Lundblade <[email-masked]>
Date: Fri, 30 Jul 2021 17:47:22 -0700

This is to check-in with the WG that defined the RFC 9039 device identifier URN and others on the UEID <https://datatracker.ietf.org/doc/html/draft-ietf-rats-eat-10#section-3.4>, a new device identifier proposed by EAT in the RATS WG. Wanted you to know about UEID and see if you have any comments. RFC 9039 and UEIDs seem largely complementary to me.

I plan to add a registration for urn:dev:ueid:xxxxxxxx to the registry established in 9039.

LL

Here’s some background that might be helpful.

A UEID (Universal Entity ID) is intended to be universal in ways that an EUI-64 / MAC and IMEI aren’t.

When designing a new device or for some existing, it may be too expensive, impractical or otherwise not possible to have and EUI-64 or an IMEI. For example, the fees for these identifiers may be too high, or the maker of the device may be politically not able to transact with the IEEE or 3GPP.

The UEID addresses this issue by allowing for the generation of an identifier that is statistically unique, one that doesn’t require any organization to track assignments. This is accomplished by making sure there enough true random bits in the UEID that the probability of collision is negligible. The statistical analysis for this is here <https://datatracker.ietf.org/doc/html/draft-ietf-rats-eat-10#appendix-B.1>  Note that this is similar to using a UUID, however it is explicitly not a UUID for reasons given here <https://datatracker.ietf.org/doc/html/draft-ietf-rats-eat-10#appendix-B.2>.

That is, a UEID is universal in that it can apply to more use cases than EUI-64 and IMEI. 

It is also universal in another way.

The UEID can be the only device identifier that a back-end or service decodes and tracks.  For example, without something like a UEID, a back-end that works with phones and laptops may need to track both by IMEI and by EUI-64 / MAC. Its database has two fields for device identifier, and may be more. It has to decode incoming messages for all the different types of device identifiers it knows about. Some devices have one, others the other, or maybe both.

A system that uses a UEID only has to decode and track only the UEID and is thus simpler.

Here’s a little more detail for how UEIDs are designed. In addition to the random bits and statistical uniqueness, a UEID may be made out of an IMEI or an EUI-64. The UEID has minimal internal structure to make sure there is no collision between the three types of UEIDS (random/hash, EUI-64 and IMEI). See here <https://datatracker.ietf.org/doc/html/draft-ietf-rats-eat-10#section-3.4> for details. Note that the IMEI and EUI-64 have an advantage of being shorter.