-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request IANA Registry #144
Comments
Commenting for @ben221199 as per his vote for this under |
I'm definitely planning to have IANA considerations in the historical RFC that I want to make with @kyzer-davis after RFC4122bis is published. However, if we already can add some basic IANA considerations in RFC4122bis, I'm okay with that, but we should think this out very well. I don't want a shitty table which I regret making, because in that case I prefer having the IANA considerations only in the historical RFC. |
From Francesca Palombini in IESG review:
|
Do I have access to this conversation too? |
It's on the list archives. |
I see. I also received them by mail, but it was not directly clear from the mail subject.
Is there a problem with it? Or should we make the "historical" RFC informational? |
Proposition:Note: I would suggest to discuss the policies in more detail. In this case I chose the policies I think suits best. For options, see Section 4 in RFC 8126. UUID Variants
Note: Maybe we should add another column for variant slugs. UUID Subtypes
Note: Maybe we can do this a little bit better. Possibly using variant slugs. UUID Special Forms
Note: Seems okay to me, but maybe some columns can be added. This is a proposition. If you have improvements on it, please let us know. Also, lets discuss if IANA Considerations should be added in RFC4122bis, or should be done in another (seperate) RFC. |
@ben I was thinking of a hierarchy like below, which would more or less use the tables you described.
Visualized:Edit 9-11-2023: Removed ascii/text visual What we could setup in rfc4122bis
Long Term, Fully Fleshed Out and VisualizedAnother thing to consider is that we need to include how to update this or add new values to this registry:
We should also state that we won't just reserve any random UUID as "special/reserved" outside of hashspace/namespace/min/max. EDIT: Second item, should we include the Test Vector UUIDs and any UUID specified in our RFC as special/reserved? in |
It's a good idea for the future improvements of the RFC4122bis: uuid6/new-uuid-encoding-techniques-ietf-draft#3 (comment) |
Hi @kyzer-davis, maybe because it is late here, but your comment confuses me at the moment. I will give it a second look tomorrow, but my first impression is that it seems overcomplicated.
Also, I think we cannot avoid writing a new (historical) RFC. AFAIK I thought we didn't want RFC 4122 to describe other variants than the OSF DCE one. |
A few notes:
|
I say "avoid" only if there is no other doc describing them. If that does not exist, or exist anymore; we can get them in the historical RFC those so they are down on paper and not lost to time. If there is some other doc (like UUIDv2 has) then we can just reference that vs duplicating work. Also, as for complication, I am not opposed to "one big subtype table" I was just trying to bundle subtypes and special UUIDs within their own variant sections to make the variant+subtype really shine. Edit: @danielmarschall, I didn't mean to omit them. I am just not an expert in those specific UUID areas. I would rely heavily on info like that from yourself and Ben to fill out those "subtypes". Thank you for helping to complete the list.. and even if they were not used I would like to list them and we can put something like "allocated but unused". |
Actually, I don't know which is right, but when I searched the internet, DCOM seemed the linked technology to UUID. However, I could be wrong and COM could then be linked to UUID, with DCOM only as extended COM. I think we should dive into Microsoft COM some more to find out what it is, how it works and what it has to do with UUID (and when).
I know that number 13 was used too, but at the time of writing I could find the right address family name for 13. I only came across a different name which I knew wasn't correct, or at least not correct in the UUID world. So I decided to not include it in my proposition. Also, it is a proposition; I only wanted to give a good example of how a table would look like. If records are missing, I will definitely add them. Thanks for mentioning DDS; now I remember that one was the correct one.
I want to say yes, but I think it is best to only include the used ones, so 0, 2 and 13. If we find out other ones are used too, we can include them. I think Paul Leach can tell us more about this one.
I have the feeling it is better if we RFC-ify ever type and subtype in the end. We can reference to the old source docs in that RFC, but the RFC would re-define them in some way. This wil result in UUID being fully RFC-defined, which also has some advantages. That is the reason I think we cannot "avoid" writing one.
Hmmm, okay. 🤔
Well, at least you are thinking about it. 😁 |
So, if I understand correctly, #144 (comment) has "registries containing registries" and "registries containing records"? For 4 or 5 levels??? As far as I have seen when I looked at the IANA files (also backuped here: https://github.com/larseggert/iana-assignments), I saw only 3 levels: In case of the general DNS Parameters (https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml), there is a registry with multiple subregistries with multiple records. In case of EPP Parameters (https://www.iana.org/assignments/epp-repository-ids/epp-repository-ids.xhtml), there is a registry with a single subregistry with multiple records. However, EPP has multiple top-registries: In your example, I see 4 or 5 levels. I don't even know if IANA even accepts that. This what I have in mind:
Here, 📁 are registries and 📄 are records. I only used 3 levels. @kyzer-davis, maybe if you can make something similar with these emoji's, I can understand what your idea is. At the moment I think you have a 4 or 5 level hierarchical tree and I think IANA only supports 3. |
I have to say that I don't see the use of hashspaces if they are only used in UUIDv8. UUIDv8 is custom and vendor specific, so it seems to me that defining hashspaces is also up to the vendor. |
According to some code that seems to be Apollo NCS code, the following families are used:
I have proof for |
Unspecified (0):
(Source: https://github.com/mit-athena/lpr/blob/master/quota/ncs/nck/uuidname.txt) IP (2):
DDS (13):
|
An
Hex "c0.64.02.03" is Dec "192.100.2.3". |
I guess it is too late to make big changes, but I think it would have been better if there would be the following ( @kyzer-davis or is there a tiny chance?) :
|
#144 (comment) Yes, I also found a AF_INET version. |
This is way over the top. |
Checking the "Registries and sub-registries" I see that the CSS can go as far as 6 levels deep.
div.level2, div.level3, div.level4, div.level5, div.level6 {
border-left: 1px dotted gray;
} Ben's ProposalMinimum required to meet IESG ProposalI am fine with Ben's proposal of 5 sub-registries. But I do agree with @mcr, I just wanted to get the page hierarchy down in a nice way so adding things later is easy; with this I would be requesting the IANA page and filling out what we have control over in this doc. If we need add "Families" later in the historical RFC it is easy to slot into the sub-registry somewhere or update a table but we don't need to dive deep into those nitty gritty details here. |
I'm also fine with the minimal version, if that causes us to get somewhere already. In that case, we only register
I don't think it will work out well if we use UUIDv8 for 3 different formats. |
I just had an idea in re hash space ID registry. Since hash space ID and OID are connected, maybe it would be good having a registry for hash algorithms in general, instead?
There might be cases where the algorithm name is known, but neither an OID nor a custom hash space is known. In this case, the fields could be left empty. Or maybe IANA could automatically generate a random Hash Space ID when adding the algorithm to the registry. **Edit: It turns out that this idea is already by kyzer-davis here #143 (comment) In re UUIDv8 and UUIDv9
I don't think UUIDv9 should be in a new RFC, and UUIDv8 should stay, because I think it is a very good idea and important. It would mean that we have to do all the formal stuff again and it would be a lot of work. I don't think that it would be catastrophic if UUIDv8 has two use-cases (custom time-based and fully custom). |
https://mailarchive.ietf.org/arch/msg/uuidrev/dhxgO66xkpNBrOtSy0AY8nV9bAE/ @sergeyprokhorenko @danielmarschall @ben221199 @LiosK @chorman0773 If this matters, then please participate. |
@danielmarschall, Please clarify your proposal taking into account the discussion that took place. It would be terrible if we had to re-do the entire approval process of this long-awaited RFC because of frankly completely useless details regarding almost unused hash UUIDs. @mcr, I completely agree with @LiosK's point of view and give him my vote |
I suggest to freeze the draft RFC and stop making any changes to it because it's too late and improvements could go on forever. There was a lot of time to make the discussed amendments in the previous stages of RFC development. Stakeholders will be able to propose changes to an already approved RFC |
For what it's worth, unless there is some specific and real-world problem these hashed UUID solve (not just "what if maybe in the future" stuff), I say skip it and move on. If nobody has a use case, after all the time and effort that's been put into the drafts, doesn't seem worth fussing over. And from a logical perspective, just to mention it as part of this: One of the reasons I tend to not put too much stock in the argument that MD5 and SHA-1 are out of date and so we should have a way to replace them - is that one of the factors that makes SHA-256 and others strong hashes is because they are longer (whereas UUIDs are fixed at 128 bits). Obviously there's more to it than that, but taking a SHA-256 value and truncating it to some smaller size and saying that it's an improvement or more collision resistant or anything because it's based on SHA-256 and not SHA-1... seems like at the very least not thoroughly researched, and at worst just flat out incorrect. Does anyone actually know the math on collisions for just the first N bits of a SHA-256 hash? Is it actually worse in terms of collision resistance than MD5 or the current SHA-1 implementation? - based on the math? (Not just the "well everyone knows MD5 is broken" - like exactly how many collisions are we talking about...) And that conundrum is another reason I (and I think a lot of other people on this thread would agree) just go back to: Is there any practical these hash UUIDs would solve? (What specifically, with some examples showing how the work done so far on this RFC doesn't cover it...) If so, great, let's discuss that specifically in more detail. If there's no good answer to that question, then I don't see any reason we can't ignore it, and I vote let's move on and get this RFC approved. |
The `GUID.v8()` method is no longer supported due to recent sudden changes in the UUIDv8 discussions. It will be removed when the new RFC is finally published. See the latest discussions about UUIDv8: * ietf-wg-uuidrev/rfc4122bis#143 * ietf-wg-uuidrev/rfc4122bis#144 * ietf-wg-uuidrev/rfc4122bis#147
I have drafted text around this under #162 |
I reviewed #162. |
From Paul Wouters:
IANA registration encompass;
The text was updated successfully, but these errors were encountered: