RFC 5333

IANA Registration of Enumservices for Internet Calendaring

πŸ“… published October 2009, from ietf

RFC 5333: IANA Registration of Enumservices for Internet Calendaring πŸŽ€

Okay bestie, this one is from the Network Working Group and it's a Standards Track doc, so it's the real deal ✨ R. Mahy (Unaffiliated) and B. Hoeneisen (Swisscom) wrote it, and it's dated October 2009 πŸ“…. The header doesn't have an Obsoletes or Updates line, so it isn't replacing or changing any other RFC. πŸ¦‹

Abstract

RFC 5333 registers Enumservices for Internet calendaring πŸ“…πŸ’– It focuses on two things: scheduling with iMIP (iCalendar Message-Based Interoperability Protocol), and accessing calendaring info with CalDAV (Calendaring Extensions to WebDAV) 🧚

Status of This Memo

This doc specifies an Internet standards track protocol for the Internet community, and it's literally asking for discussion and suggestions for improvements 🫢 For the standardization state and status of this protocol, check the current edition of "Internet Official Protocol Standards" (STD 1) πŸ’… Distribution of this memo is unlimited 🌈

Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved ©️✨

This doc is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they were in effect on the publication date. Please actually read these, because they spell out your rights and restrictions for this doc πŸ“œ Code Components pulled out of this doc must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come with no warranty, as described in the BSD License πŸ’œ

This doc may include material from IETF Documents or IETF Contributions that were published or made publicly available before November 10, 2008. The people controlling the copyright in some of that material may not have given the IETF Trust permission to allow modifications outside the IETF Standards Process 😭 Without an adequate license from them, this doc may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process. The one exceptions are formatting it for publication as an RFC or translating it into languages other than English 🌸

1. Introduction

ENUM (E.164 Number Mapping, RFC 3761 [1]) is a system that uses DNS (Domain Name System, RFC 1034 [2]) to turn telephone numbers, like '+12025550100', into URIs (Uniform Resource Identifiers, RFC 3986 [3]), like 'mailto:user@example.com' πŸ“žβž‘οΈπŸ”— ENUM mostly exists so systems that run on phone numbers can talk to systems that use URIs to identify resources. The ENUM registration here could let a phone, for example, check the free/busy status of someone in its address book, or propose a meeting with them from their phone number πŸ“

The Guide to Internet Calendaring [10] explains how the different Internet calendaring specs relate to each other. It says:

"iCalendar [4] is the language used to describe calendar objects. iTIP [5] [iCalendar Transport-Independent Interoperability Protocol] describes a way to use the iCalendar language to do scheduling. iMIP [6] [iCalendar Message-Based Interoperability Protocol] describes how to do iTIP scheduling via e-mail".

Recently, another Standards Track protocol for calendar and scheduling access showed up πŸ‘‘ CalDAV (Calendaring Extensions to WebDAV) [7] is a mechanism based on WebDAV (Web-based Distributed Authoring and Versioning) [8]. It's used for manipulating Internet calendars and viewing free/busy lists. Through a planned scheduling extension [15], it could also be used for proposing calendar events in the future πŸ¦‹

The existing 'mailto:' URI scheme (defined in RFC 3986 [3]) is already used to address iMIP compatible Calendar Services πŸ’Œ Likewise, the existing 'http:' and 'https:' URI schemes (defined in RFC 2616 [11] and RFC 2818 [12]) are already used to address CalDAV compatible Calendar Services 🌈

This document registers Enumservices for scheduling and for accessing Internet calendaring information that's associated with an E.164 number πŸ’–

2. Enumservice Registrations

As defined in RFC 3761 [1], the templates below cover the info you need to register the Enumservices in this doc πŸŽ€

Enumservice Name:
   "ical-sched"
Enumservice Type:
   "ical-sched"
Enumservice Subtypes:
   "mailto"
URI scheme(s):
   'mailto:'
Functional Specification:
   This Enumservice indicates that the resource identified can be
   addressed by the associated URI used for scheduling using Internet
   calendaring via Internet mail with the iMIP [6] protocol.
Security considerations:
   See Section 4.
Intended usage:
   COMMON
Author:
   Rohan Mahy (rohan@ekabal.com)

Enumservice Name:
   "ical-access"
Enumservice Type:
   "ical-access"
Enumservice Subtypes:
   "http"
URI scheme(s):
   'http:'
Functional Specification:
   This Enumservice indicates that the resource identified can be
   addressed by the associated URI in order to access a user's
   calendar (for example free/busy status) using the CalDAV [7]
   protocol for Internet calendaring.
Security considerations:
   See Section 4.
Intended usage:
   COMMON
Author:
   Rohan Mahy (rohan@ekabal.com)

Enumservice Name:
   "ical-access"
Enumservice Type:
   "ical-access"
Enumservice Subtypes:
   "https"
URI scheme(s):
   'https:'
Functional Specification:
   This Enumservice indicates that the resource identified can be
   addressed by the associated URI in order to access a user's
   calendar (for example free/busy status) using the CalDAV [7]
   protocol for Internet calendaring.
Security considerations:
   See Section 4.
Intended usage:
   COMMON
Author:
   Rohan Mahy (rohan@ekabal.com)
Quick note πŸ™ˆ These Enumservices use a dash "-" in their Type strings. To allow for hierarchical concepts (which this case needs), some kind of boundary has to exist. Neither RFC 3761 [1] nor its intended successor [17] plans for sub-subtyping. So the natural fix is a dash "-" in Type strings, which is kinda contradictory to RFC 3761 [1]. BUT its intended successors [16] [17] clearly allow a dash "-" in Type strings, so using "-" is seen as a practical way forward πŸ’…

3. Examples

Here's what the records look like 🧚

$ORIGIN 3.2.1.0.5.5.5.2.1.2.1.e164.arpa.
@ NAPTR 10 100 "u" "E2U+ical-access:https" \
   "!^.*$!https://cal.example.com/home/alice/calendars/!" .

$ORIGIN 3.2.1.0.5.5.5.2.1.2.1.e164.arpa.
@ NAPTR 20 100 "u" "E2U+ical-sched:mailto" \
   "!^.*$!mailto:alice@example.com!" .

4. Security Considerations

Okay, this section is serious, so buckle up 😭 DNS doesn't make policy decisions about which records it hands to a DNS resolver. All DNS records have to be assumed available to all inquirers at all times 🚨 So the info in an ENUM record set has to be treated as open to the public, which is a real cause for privacy concerns πŸ™ˆ

Revealing a calendaring URI by itself isn't likely to cause many privacy issues. Still, depending on how the URI is structured, it might reveal the full name or employer of the target πŸ’€ Using anonymous URIs reduces that risk 🫢

ENUM runs on DNS, and in its current form DNS is an insecure protocol 😬 There's no mechanism to make sure the answer to a query is authentic. A threat analysis specific to ENUM's dependence on DNS is in RFC 3761 [1], and a thorough look at threats to DNS itself is in RFC 3833 [14]. A lot of these problems go away when the resolver verifies the authenticity of its ENUM query answers with DNSSEC (DNS Security, RFC 4035 [9]) in zones where it's available ✨

The bigger concerns are attacks on the calendaring system underneath, like unauthorized modification or viewing 🚨 For that reason, iTIP discusses a bunch of security requirements (detailed in RFC 2446 [5]) that call for authentication, integrity, and confidentiality properties, plus similar measures to stop such attacks. Any calendaring protocol used with a URI scheme currently meets these requirements πŸ”₯ Using CalDAV with the 'https:' scheme uses TLS (Transport Layer Security, RFC 5246 [13]) to provide server authentication, confidentiality, and message integrity πŸ”

Unlike a traditional phone number, the resource identified by a calendaring URI is often already guessable. It also often requires users to give cryptographic credentials for authentication and authorization before calendar data can be exchanged πŸ›‘οΈ Even though ENUM records are public, using that info to reveal an unprotected calendaring resource is unlikely in practice πŸ’œ

5. IANA Considerations

This doc requests registration of the "ical-sched" and "ical-access" Enumservices, following the definitions in Section 2 of this doc and RFC 3761 [1] πŸ“

6. References

6.1. Normative References

[1]   Faltstrom, P. and M. Mealling, "The E.164 to Uniform Resource
      Identifiers (URI) Dynamic Delegation Discovery System (DDDS)
      Application (ENUM)", RFC 3761, April 2004.

[2]   Mockapetris, P., "Domain names - concepts and facilities",
      STD 13, RFC 1034, November 1987.

[3]   Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
      Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986,
      January 2005.

[4]   Dawson, F. and Stenerson, D., "Internet Calendaring and
      Scheduling Core Object Specification (iCalendar)", RFC 2445,
      November 1998.

[5]   Silverberg, S., Mansour, S., Dawson, F., and R. Hopson,
      "iCalendar Transport-Independent Interoperability Protocol
      (iTIP) Scheduling Events, BusyTime, To-dos and Journal
      Entries", RFC 2446, November 1998.

[6]   Dawson, F., Mansour, S., and S. Silverberg, "iCalendar
      Message-Based Interoperability Protocol (iMIP)", RFC 2447,
      November 1998.

[7]   Daboo, C., Desruisseaux, B., and L. Dusseault, "Calendaring
      Extensions to WebDAV (CalDAV)", RFC 4791, March 2007.

[8]   Dusseault, L., "HTTP Extensions for Web Distributed Authoring
      and Versioning (WebDAV)", RFC 4918, June 2007.

[9]   Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose,
      "Protocol Modifications for the DNS Security Extensions",
      RFC 4035, March 2005.

6.2. Informative References ✨

Okay bestie, these are the extra reads that back up the spec, and they're all very worth a look πŸ“šπŸ’–

  • [10] Mahoney, B., Babics, G., and A. Taler, "Guide to Internet Calendaring", RFC 3283, June 2002. πŸ—“οΈ
  • [11] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. 🌐
  • [12] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000. πŸ”
  • [13] Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.2", RFC 5246, August 2008. πŸŽ€
  • [14] Atkins, D. and R. Austein, "Threat Analysis of the Domain Name System (DNS)", RFC 3833, August 2004. 🧚
  • [15] Daboo, C. and B. Desruisseaux, "CalDAV Scheduling Extensions to WebDAV", Work in Progress, August 2009. πŸ¦‹
  • [16] Bradner, S., Conroy, L., and K. Fujiwara, "The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)", Work in Progress, May 2009. πŸ“ž
  • [17] Hoeneisen, B., Mayrhofer, A., and J. Livingood, "IANA Registration of Enumservices: Guide, Template and IANA Considerations", Work in Progress, September 2009. 🌸

Appendix A. Acknowledgments 🫢

Huge thanks to Lisa Dusseault and Alexander Mayrhofer for reviewing this document. Literal legends, both of them πŸ‘‘βœ¨

Authors' Addresses πŸ’Œ

Rohan Mahy
Unaffiliated

EMail: rohan@ekabal.com


Bernie Hoeneisen
Swisscom
CH-8000 Zuerich
Switzerland

EMail: bernie@ietf.hoeneisen.ch (bernhard.hoeneisen@swisscom.com)
URI:   http://www.swisscom.com/

That's the whole RFC, bestie! πŸŒˆπŸ’… RFC 5333 is a wrap, and the authors are right there if you ever want to say hi πŸ¦‹

πŸ“¦ where this page comes from