RFC 3061

A URN Namespace of Object Identifiers

πŸ“… published February 2001, from ietf

RFC 3061: A URN Namespace of Object Identifiers πŸŽ€

Okay bestie, so this one is from February 2001 and it's written by Michael Mealling from Verisign πŸ’… It's an Informational doc, which means it gives info to the internet community and doesn't set any official standard. It also obsoletes RFC 3001, so this is the new version of that one 🫢 It doesn't update anything else.


Status of This Memo ✨

This memo gives info to the Internet community. It doesn't specify any kind of Internet standard. Distribution is totally unlimited, so share it with everyone 🌸

Copyright (C) The Internet Society (2001). All Rights Reserved.

Abstract πŸ¦‹

This doc describes a Uniform Resource Name (URN) namespace that holds Object Identifiers (OIDs). It obsoletes RFC 3001.

1. Introduction πŸ’–

Okay so an Object Identifier is basically a tree, and every node in it is just a sequence of digits. The vibe is that once an entity gets a node in the OID tree, it gets to decide on its own how to further subdelegate the sub-trees under that node. Main character energy for real πŸ‘‘ Some examples of OIDs:

  • 1.3.6.1 - the Internet OID
  • 1.3.6.1.4.1 - IANA-assigned company OIDs, used for private MIBs and such things
  • 1.3.6.1.2.1.27 - The Applications MIB
  • 0.9.2342.19200300.100.4 - Object ID's used in the directory pilot project to identify X.500 Object Classes. Mostly defined in RFC 1274.

This doc specifies the "oid" URN namespace [2]. This namespace is for encoding an Object Identifier, as specified in ASN.1 [3], as a URI 🧚 RFC 3001 [1] is obsoleted by this spec, so it's officially retired 🫑

The namespace spec is for a formal namespace πŸ’…

2. Specification Template πŸŽ€

Namespace ID

"oid" requested.

Registration Information

Registration Version Number: 1
Registration Date: 2000-04-30

Declared registrant of the namespace

The ISO/IEC Joint Technical Committee 1 - SubCommittee 6

The real authority is the ASN.1 specification itself, but SC6 is the committee with the authority to interpret what that means. So that's who gets listed as the registrant πŸ€“

Declaration of structure

The NSS portion of the identifier is based on the string encoding rules found in RFC 1778 Section 2.15 [4]. It says you write a series of digits separated by a period, with the most significant digit on the left and the least significant on the right. At no time shall the NSS portion of the URN contain the human readable description of a particular node in the OID tree πŸ™ˆ The NSS portion is strictly limited to the digits 0-9 and the . character, with no leading zeros. No other characters are permitted. Everything is expressed in this ABNF:

oid             = number *( DOT number )
number          = DIGIT / ( LEADDIGIT 1*DIGIT )
LEADDIGIT       = %x31-39 ; 1-9
DIGIT           = %x30 / LEADDIGIT ; 0-9
DOT             = %x2E ; period

No changes are anticipated, since Object Identifiers are pretty simple and have been standardized with no changes for many years. Stable and iconic πŸ“

Relevant ancillary documentation

Relevant documentation can be found in X.660/Amd 2 | ISO/IEC 9834-1/Amd 2[3] πŸ“š

Identifier uniqueness considerations

The rules for assigning OIDs require that each OID be unique to the OID space, and that it cannot be reassigned or reused. By reference, this URN namespace inherits those rules πŸ”’

Identifier persistence considerations

The rules for using OIDs require that they not be reused once assigned. By reference, this URN namespace inherits those rules too πŸ’œ

Process of identifier assignment

Once an OID is assigned to some entity, that entity can then create and assign new OIDs below that particular OID. There are multiple entities that assign new OIDs to the general public. The top three levels are pre-assigned like this:

0 - ITU-T assigned
1 - ISO assigned
2 - Joint ISO/ITU-T assignment

Several assigned OIDs are important to the Internet, too:

1.3.6.1 - the Internet OID
1.3.6.1.4.1 - IANA-assigned company OIDs, used for private
MIBs and such things

Process of identifier resolution

At this time, no resolution mechanism is defined πŸ€·β€β™€οΈ

Rules for Lexical Equivalence

OIDs are made of multiple occurrences of digits and the "." character. Lexical equivalence is achieved by exact string match 🎯

Conformance with URN Syntax

There are no additional characters reserved 🌈

Validation mechanism

None. πŸ’€

Scope

Global 🌍

3. Examples 🧚

These examples come from the example OIDs in the Introduction:

urn:oid:1.3.6.1
urn:oid:1.3.6.1.4.1
urn:oid:1.3.6.1.2.1.27
URN:OID:0.9.2342.19200300.100.4

4. Security Considerations ⭐

None not already inherent to using unverifiable OIDs. Seriously, if you're using OIDs you can't verify, that's on you and the risk is already baked in 😭

5. Acknowledgements 🫢

The author would like to thank Harald Alvestrand for using his OID database as a source for examples and references. Iconic behaviour from Harald πŸ‘‘


References πŸ“š

[1]  Mealling, M., "A URN Namespace of Object Identifiers", RFC 3001,
     November 2000.

[2]  Moats, R., "URN Syntax", RFC 2141, May 1997.

[3]  CCITT, "Specification of Basic Encoding Rules for Abstract
     Syntax Notation One (ASN.1)", CCITT Recommendation X.209,
     January 1988.

[4]  Howes, T., Kille, S., Yeong, W. and C. Robbins, "The String
     Representation of Standard Attribute Syntaxes", RFC 1778, March
     1995.

Author's Address πŸŽ€

Michael Mealling
Verisign
505 Huntmar Park Drive
Herndon, VA  22070
US

Phone: +1 770 935 5492
EMail: michaelm@netsol.com
URI:   http://www.netsol.com

Copyright (C) The Internet Society (2001). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement 🌸

Funding for the RFC Editor function is currently provided by the Internet Society. Periodt πŸ’–

πŸ“¦ where this page comes from