idnits 2.17.1 draft-ietf-sipbrandy-osrtp-05.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (September 14, 2018) is 2044 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Obsolete informational reference (is this intentional?): RFC 6982 (Obsoleted by RFC 7942) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SIPBRANDY Working Group A. Johnston 3 Internet-Draft Rowan University 4 Intended status: Informational B. Aboba 5 Expires: March 18, 2019 Microsoft 6 A. Hutton 7 Atos 8 R. Jesske 9 Deutsche Telekom 10 T. Stach 11 Unaffiliated 12 September 14, 2018 14 An Opportunistic Approach for Secure Real-time Transport Protocol 15 (OSRTP) 16 draft-ietf-sipbrandy-osrtp-05 18 Abstract 20 Opportunistic Secure Real-time Transport Protocol (OSRTP) is an 21 implementation of the Opportunistic Security mechanism, as defined in 22 RFC 7435, applied to Real-time Transport Protocol (RTP). OSRTP 23 allows encrypted media to be used in environments where support for 24 encryption is not known in advance, and not required. OSRTP does not 25 require SDP extensions or features and is fully backwards compatible 26 with existing implementations using encrypted and authenticated media 27 and implementations that do not encrypt or authenticate media 28 packets. OSRTP is not specific to any key management technique for 29 SRTP. OSRTP is a transitional approach useful for migrating existing 30 deployments of real-time communications to a fully encrypted and 31 authenticated state. 33 Status of This Memo 35 This Internet-Draft is submitted in full conformance with the 36 provisions of BCP 78 and BCP 79. 38 Internet-Drafts are working documents of the Internet Engineering 39 Task Force (IETF). Note that other groups may also distribute 40 working documents as Internet-Drafts. The list of current Internet- 41 Drafts is at https://datatracker.ietf.org/drafts/current/. 43 Internet-Drafts are draft documents valid for a maximum of six months 44 and may be updated, replaced, or obsoleted by other documents at any 45 time. It is inappropriate to use Internet-Drafts as reference 46 material or to cite them other than as "work in progress." 48 This Internet-Draft will expire on March 18, 2019. 50 Copyright Notice 52 Copyright (c) 2018 IETF Trust and the persons identified as the 53 document authors. All rights reserved. 55 This document is subject to BCP 78 and the IETF Trust's Legal 56 Provisions Relating to IETF Documents 57 (https://trustee.ietf.org/license-info) in effect on the date of 58 publication of this document. Please review these documents 59 carefully, as they describe your rights and restrictions with respect 60 to this document. Code Components extracted from this document must 61 include Simplified BSD License text as described in Section 4.e of 62 the Trust Legal Provisions and are provided without warranty as 63 described in the Simplified BSD License. 65 Table of Contents 67 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 68 1.1. Applicability Statement . . . . . . . . . . . . . . . . . 3 69 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 70 3. SDP Offer/Answer Considerations . . . . . . . . . . . . . . . 3 71 3.1. Generating the Initial OSRTP Offer . . . . . . . . . . . 4 72 3.2. Generating the Answer . . . . . . . . . . . . . . . . . . 4 73 3.3. Offerer Processing the Answer . . . . . . . . . . . . . . 4 74 3.4. Modifying the Session . . . . . . . . . . . . . . . . . . 4 75 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 76 5. Implementation Status . . . . . . . . . . . . . . . . . . . . 5 77 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 78 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 79 7.1. Normative References . . . . . . . . . . . . . . . . . . 6 80 7.2. Informative References . . . . . . . . . . . . . . . . . 7 81 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 83 1. Introduction 85 Opportunistic Security [RFC7435] (OS) is an approach to security that 86 defines a third mode for security between "cleartext" and 87 "comprehensive protection" that allows encryption and authentication 88 to be used if supported but will not result in failures if it is not 89 supported. In terms of secure media, cleartext is RTP [RFC3550] 90 media which is negotiated with the RTP/AVP (Audio Video Profile) 91 profile defined [RFC3551]. Comprehensive protection is Secure RTP 92 [RFC3711], negotiated with a secure profile, such as SAVP or SAVPF 93 [RFC5124]. OSRTP allows SRTP to be negotiated with the RTP/AVP 94 profile, with fallback to RTP if SRTP is not supported. 96 There have been some extensions to SDP to allow profiles to be 97 negotiated such as SDP Capabilities Negotiation (capneg) [RFC5939] . 99 However, these approaches are complex and have very limited 100 deployment in communication systems. Other key management protocols 101 for SRTP have been developed which by design use OS, such as ZRTP 102 [RFC6189]. This approach for OSRTP is based on 103 [I-D.kaplan-mmusic-best-effort-srtp] where it was called "best effort 104 SRTP". [I-D.kaplan-mmusic-best-effort-srtp] has a full discussion of 105 the motivation and requirements for opportunistic secure media. 107 OSRTP uses the presence of SRTP keying-related attributes in an SDP 108 offer to indicate support for opportunistic secure media. The 109 presence of SRTP keying-related attributes in the SDP answer 110 indicates that the other party also supports OSRTP and encrypted and 111 authenticated media will be used. OSRTP requires no additional 112 extensions to SDP or new attributes and is defined independently of 113 the key agreement mechanism used. OSRTP is only usable when media is 114 negotiated using the Offer/Answer protocol [RFC3264]. 116 1.1. Applicability Statement 118 OSRTP is a transitional approach that provides a migration path from 119 unencrypted communication (RTP) to fully encrypted communication 120 (SRTP). It is only to be used in existing deployments which are 121 attempting to transition to fully secure communications. New 122 applications and new deployments will not use OSRTP. 124 2. Requirements Language 126 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 127 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 128 "OPTIONAL" in this document are to be interpreted as described in RFC 129 2119 [RFC2119]. 131 3. SDP Offer/Answer Considerations 133 This section defines the SDP offer/answer considerations for 134 opportunistic security. 136 The procedures are for a specific m- section describing RTP-based 137 media. If an SDP offer or answer contains multiple such m- sections, 138 the procedures are applied to each m- section individually. 140 "Initial OSRTP offer" refers to the offer in which oportunistic 141 security is offered for an m- section for the first time within an 142 SDP session. 144 It is important to note that OSRTP makes no changes, and has no 145 effect on media sessions in which the offer contains a secure profile 146 of RTP, such as SAVP or SAVPF. As discussed in [RFC7435], this is 147 the "comprehensive protection" for media mode. 149 3.1. Generating the Initial OSRTP Offer 151 To indicate support for OSRTP in an SDP offer, the offerer uses the 152 RTP/AVP profile [RFC3551] but includes SRTP keying attributes. OSRTP 153 is not specific to any key management technique for SRTP. For 154 example: 156 If the offerer supports DTLS-SRTP key agreement [RFC5763], then an 157 a=fingerprint attribute will be present, or 159 If the offerer supports SDP Security Descriptions key agreement 160 [RFC4568], then an a=crypto attribute will be present, or 162 If the offerer supports ZRTP key agreement [RFC6189], then an 163 a=zrtp-hash attribute will be present. 165 3.2. Generating the Answer 167 To accept OSRTP, an answerer receiving an offer indicating support 168 for OSRTP generates an SDP answer containing SRTP keying attributes 169 which match one of the keying methods in the offer. The answer MUST 170 NOT contain attributes from more than one keying method, even if the 171 offer contained multiple keying method attributes. The selected SRTP 172 key management approach is followed and SRTP media is used for this 173 session. If the SRTP key management fails for any reason, the media 174 session MUST fail. To decline OSRTP, the answerer generates an SDP 175 answer omitting SRTP keying attributes, and the media session 176 proceeds with RTP with no encryption or authentication used. 178 3.3. Offerer Processing the Answer 180 If the offerer of OSRTP receives an SDP answer which does not contain 181 SRTP keying attributes, then the media session proceeds with RTP. If 182 the SDP answer contains the RTP/AVP profile with SRTP keying 183 attributes or the SAVP (or UDP/TLS/RTP/SAVP(F)) profile with SRTP 184 keying attributes, then that particular SRTP key management approach 185 is followed and SRTP media is used for this session. If the SRTP key 186 management fails, the media session MUST fail. 188 3.4. Modifying the Session 190 When an offerer generates a subsequent offer it should do so 191 following the principles of [RFC6337] meaning that the decision to 192 create an OSRTP type offer or something else should not be influenced 193 by what was previously negotiated. For example if a previous OSRTP 194 offer did not result in SRTP being established the offerer may try 195 again and generate a new OSRTP offer as specified in section [3.1]. 197 4. Security Considerations 199 The security considerations of [RFC7435] apply to OSRTP, as well as 200 the security considerations of the particular SRTP key agreement 201 approach used. However, the authentication requirements of a 202 particular SRTP key agreement approach are relaxed when that key 203 agreement is used with OSRTP. For example: 205 For DTLS-SRTP key agreement [RFC5763], an authenticated signaling 206 channel does not need to be used with OSRTP if it is not 207 available. 209 For SDP Security Descriptions key agreement [RFC4568], an 210 authenticated signaling channel does not need to be used with 211 OSRTP if it is not available, although an encrypted signaling 212 channel must still be used. 214 For ZRTP key agreement [RFC6189], the security considerations are 215 unchanged, since ZRTP does not rely on the security of the 216 signaling channel. 218 As discussed in [RFC7435], OSRTP is used in cases where support for 219 encryption by the other party is not known in advance, and not 220 required. For cases where it is known that the other party supports 221 SRTP or SRTP needs to be used, OSRTP MUST NOT be used. Instead, a 222 secure profile of RTP is used in the offer. 224 5. Implementation Status 226 Note to RFC Editor: Please remove this entire section prior to 227 publication, including the reference to [RFC6982]. 229 This section records the status of known implementations of the 230 protocol defined by this specification at the time of posting of this 231 Internet-Draft, and is based on a proposal described in [RFC6982]. 232 The description of implementations in this section is intended to 233 assist the IETF in its decision processes in progressing drafts to 234 RFCs. Please note that the listing of any individual implementation 235 here does not imply endorsement by the IETF. Furthermore, no effort 236 has been spent to verify the information presented here that was 237 supplied by IETF contributors. This is not intended as, and must not 238 be construed to be, a catalog of available implementations or their 239 features. Readers are advised to note that other implementations may 240 exist. 242 According to [RFC6982], "this will allow reviewers and working groups 243 to assign due consideration to documents that have the benefit of 244 running code, which may serve as evidence of valuable experimentation 245 and feedback that have made the implemented protocols more mature. 246 It is up to the individual working groups to use this information as 247 they see fit". 249 There are implementations of [I-D.kaplan-mmusic-best-effort-srtp] in 250 deployed products by Microsoft and Unify. The IMTC "Best Practices 251 for SIP Security" document [IMTC-SIP] recommends this approach. The 252 SIP Forum planned to include support in the SIPconnect 2.0 SIP 253 trunking recommendation [SIPCONNECT]. There are many deployments of 254 ZRTP [RFC6189]. 256 6. Acknowledgements 258 This document is dedicated to our friend and colleague Francois Audet 259 who is greatly missed in our community. His work on improving 260 security in SIP and RTP provided the foundation for this work. 262 Thanks to Eric Rescorla, Martin Thomson, Christer Holmberg, and 263 Richard Barnes for their comments. 265 7. References 267 7.1. Normative References 269 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 270 Requirement Levels", BCP 14, RFC 2119, 271 DOI 10.17487/RFC2119, March 1997, 272 . 274 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model 275 with Session Description Protocol (SDP)", RFC 3264, 276 DOI 10.17487/RFC3264, June 2002, 277 . 279 [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. 280 Jacobson, "RTP: A Transport Protocol for Real-Time 281 Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550, 282 July 2003, . 284 [RFC3551] Schulzrinne, H. and S. Casner, "RTP Profile for Audio and 285 Video Conferences with Minimal Control", STD 65, RFC 3551, 286 DOI 10.17487/RFC3551, July 2003, 287 . 289 [RFC3711] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K. 290 Norrman, "The Secure Real-time Transport Protocol (SRTP)", 291 RFC 3711, DOI 10.17487/RFC3711, March 2004, 292 . 294 [RFC4568] Andreasen, F., Baugher, M., and D. Wing, "Session 295 Description Protocol (SDP) Security Descriptions for Media 296 Streams", RFC 4568, DOI 10.17487/RFC4568, July 2006, 297 . 299 [RFC5124] Ott, J. and E. Carrara, "Extended Secure RTP Profile for 300 Real-time Transport Control Protocol (RTCP)-Based Feedback 301 (RTP/SAVPF)", RFC 5124, DOI 10.17487/RFC5124, February 302 2008, . 304 [RFC5763] Fischl, J., Tschofenig, H., and E. Rescorla, "Framework 305 for Establishing a Secure Real-time Transport Protocol 306 (SRTP) Security Context Using Datagram Transport Layer 307 Security (DTLS)", RFC 5763, DOI 10.17487/RFC5763, May 308 2010, . 310 [RFC6189] Zimmermann, P., Johnston, A., Ed., and J. Callas, "ZRTP: 311 Media Path Key Agreement for Unicast Secure RTP", 312 RFC 6189, DOI 10.17487/RFC6189, April 2011, 313 . 315 [RFC7435] Dukhovni, V., "Opportunistic Security: Some Protection 316 Most of the Time", RFC 7435, DOI 10.17487/RFC7435, 317 December 2014, . 319 7.2. Informative References 321 [I-D.kaplan-mmusic-best-effort-srtp] 322 Audet, F. and H. Kaplan, "Session Description Protocol 323 (SDP) Offer/Answer Negotiation For Best-Effort Secure 324 Real-Time Transport Protocol", draft-kaplan-mmusic-best- 325 effort-srtp-01 (work in progress), October 2006. 327 [IMTC-SIP] 328 "Best Practices for SIP Security", IMTC SIP Parity 329 Group http://www.imtc.org/uc/sip-parity-activity-group/, 330 2011, . 332 [RFC5939] Andreasen, F., "Session Description Protocol (SDP) 333 Capability Negotiation", RFC 5939, DOI 10.17487/RFC5939, 334 September 2010, . 336 [RFC6337] Okumura, S., Sawada, T., and P. Kyzivat, "Session 337 Initiation Protocol (SIP) Usage of the Offer/Answer 338 Model", RFC 6337, DOI 10.17487/RFC6337, August 2011, 339 . 341 [RFC6982] Sheffer, Y. and A. Farrel, "Improving Awareness of Running 342 Code: The Implementation Status Section", RFC 6982, 343 DOI 10.17487/RFC6982, July 2013, 344 . 346 [SIPCONNECT] 347 "SIP-PBX / Service Provider Interoperability SIPconnect 348 2.0 - Technical Recommendation", SIP Forum http://www.sipf 349 orum.org/component/option,com_docman/task,doc_download/ 350 gid,838/Itemid,261/, 2017, . 352 Authors' Addresses 354 Alan Johnston 355 Rowan University 356 Glassboro, NJ 357 USA 359 Email: alan.b.johnston@gmail.com 361 Bernard Aboba 362 Microsoft 363 One Microsoft Way 364 Redmond, WA 98052 365 USA 367 Email: bernard.aboba@gmail.com 369 Andrew Hutton 370 Atos 371 Mid City Place 372 London WC1V 6EA 373 UK 375 Email: andrew.hutton@atos.net 376 Roland Jesske 377 Deutsche Telekom 378 Heinrich-Hertz-Strasse 3-7 379 Darmstadt 64295 380 Germany 382 Email: R.Jesske@telekom.de 384 Thomas Stach 385 Unaffiliated 387 Email: thomass.stach@gmail.com