RFC 3711:The Secure Real-time Transport Protocol (...
RFC-Ref

RTP


Click on the red underlined text to get to the source

... SRTP), a profile of the Real-time Transport Protocol (RTP), which can provide confidentiality, message authentication ...
... confidentiality, message authentication, and replay protection to the RTP traffic and to the control traffic for RTP ...
... RTP traffic and to the control traffic for RTP, RTCP (the Real-time Transport Control Protocol ...
... encryption and message authentication of RTP and RTCP streams (Section 3). SRTP defines a set of default ...
... SRTP is secure (Sections 9) for unicast and multicast RTP applications (Section 11). SRTP ...
... and an "implicit" index for sequencing/synchronization based on the RTP sequence number for SRTP and an index number for Secure RTCP ...


... * the confidentiality of the RTP and RTCP payloads, and ...
... * the integrity of the entire RTP and RTCP packets, together with protection against ...
... erroneous alteration of RTCP messages could otherwise disrupt the processing of the RTP stream). Other, functional, goals for the protocol are: ...
... * low bandwidth cost, i.e., a framework preserving RTP header compression efficiency, ...
... network, and physical layers used by RTP, in particular high tolerance to packet loss and re-ordering. ...
... These properties ensure that SRTP is a suitable protection scheme for RTP/RTCP in both wired and wireless scenarios. ...


... RTP is the Real-time Transport Protocol [RFC3550]. We define SRTP ...
... SRTP as a profile of RTP. This profile is an extension to the RTP Audio/Video Profile ...
... profile of RTP. This profile is an extension to the RTP Audio/Video Profile [RFC3551]. Except where explicitly noted, all ...
... security features. Conceptually, we consider SRTP to be a "bump in the stack" implementation which resides between the RTP application and the transport layer. SRTP ...
... transport layer. SRTP intercepts RTP packets and then forwards an equivalent SRTP packet on the sending side, and intercepts SRTP packets ...
... equivalent SRTP packet on the sending side, and intercepts SRTP packets and passes an equivalent RTP packet up the stack on the receiving side. ...
... RTCP as SRTP does to RTP. SRTCP message authentication is MANDATORY and ...
... thereby protects the RTCP fields to keep track of membership, provide feedback to RTP senders, or maintain packet sequence counters. SRTCP ...
... Secure RTP ...
... | .... | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | RTP extension (OPTIONAL) | | +>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | payload ...
... payload ... | | | | +-------------------------------+ | | | | RTP padding | RTP pad count | | +>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<+ ...
... | | +-------------------------------+ | | | | RTP padding | RTP pad count | | +>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<+ | ~ SRTP ...
... SRTP packet consists of the encryption of the RTP payload (including RTP padding when present) of the equivalent RTP packet ...
... encryption of the RTP payload (including RTP padding when present) of the equivalent RTP packet. The Encrypted ...
... RTP payload (including RTP padding when present) of the equivalent RTP packet. The Encrypted Portion MAY be the exact size of the plaintext ...
... Encrypted Portion MAY be the exact size of the plaintext or MAY be larger. Figure 1 shows the RTP payload including any possible padding for RTP [RFC3550 ...
... plaintext or MAY be larger. Figure 1 shows the RTP payload including any possible padding for RTP [RFC3550]. ...
... None of the pre-defined encryption transforms uses any padding; for these, the RTP and SRTP payload sizes match exactly. New transforms ...
... SRTP (following Section 6) may require padding, and may hence produce larger payloads. RTP provides its own padding format (as seen in Fig. 1), which due to the padding indicator in the RTP header has merits in terms of compactness relative to paddings using ...
... payloads. RTP provides its own padding format (as seen in Fig. 1), which due to the padding indicator in the RTP header has merits in terms of compactness relative to paddings using prefix-free codes. This RTP ...
... RTP header has merits in terms of compactness relative to paddings using prefix-free codes. This RTP padding SHALL be the default method for transforms requiring padding. Transforms MAY specify other padding ...
... authentication tag are the only fields defined by SRTP that are not in RTP. Only 8-bit alignment is assumed. ...
... Authenticated Portion of an SRTP packet consists of the RTP header followed by the Encrypted Portion of the SRTP packet ...
... authentication tag provides authentication of the RTP header and payload, and it indirectly provides replay protection ...
... ROC), which records how many times the 16-bit RTP sequence number has been reset to zero after passing through 65,535. Unlike the sequence number ...
... SEQ), which SRTP extracts from the RTP packet header, the ROC is maintained by ...
... SRTP packet corresponding to a given ROC and RTP sequence number to be the 48-bit quantity ...
... bit sequence number s_l, which can be thought of as the highest received RTP sequence number (see Section 3.3.1 for its handling), which SHOULD be authenticated ...
... In addition, there can be cases (see Sections 8 and 9.1) where several SRTP streams within a given RTP session, identified by their synchronization source (SSRCs ...
... synchronization source (SSRCs, which is part of the RTP header), share most of the crypto context parameters (including possibly ...
... Recall that an RTP session for each participant is defined [RFC3550] by a pair of destination transport ...
... address plus a port pair for RTP and RTCP), and that a multimedia session is ...
... RTCP), and that a multimedia session is defined as a collection of RTP sessions. For example, a particular multimedia session could include an audio ...
... multimedia session could include an audio RTP session, a video RTP session, and a text RTP session. ...
... multimedia session could include an audio RTP session, a video RTP session, and a text RTP session. ...
... audio RTP session, a video RTP session, and a text RTP session. A cryptographic context ...
... port may not be directly deducible from the RTP port only. Alternatively, the key management may choose to provide separate SRTP- and SRTCP ...
... distinct transforms, if so desired. Similar considerations arise when multiple SRTP streams, forming part of one single RTP session, share keys and other parameters. ...
... cryptographic context, and the sequence number in the RTP packet, as described in Section 3.3.1. 3. Determine the master key and master salt. This is done using the ...
... 5. Encrypt the RTP payload to produce the Encrypted Portion of the packet (see Section 4.1, for the defined ciphers). This step uses ...
... counter, ROC, to zero. Each time the RTP sequence number, SEQ, wraps ...
... Receiver-side implementations use the RTP sequence number to determine the correct index of a packet, which is the location of the ...
... counter requires its handling and use to be well defined. In particular, out-of-order RTP packets with sequence numbers close to 2^16 or zero must be properly handled. ...
... signaling. Furthermore, the receiver SHALL initialize s_l to the RTP sequence number (SEQ ...
... need to be 2^15 packets out of sequence before synchronization is lost. Such drastic loss or reorder is likely to disrupt the RTP application itself. ...
... to be lost, e.g., when the initial sequence number (randomly chosen by RTP) is not known in advance (not sent in the key management protocol) but may be near to wrap modulo 2^16. ...
... A more elaborate and more robust scheme than the one given above is the handling of RTP's own "rollover counter", see Appendix A.1 of [RFC3550 ...
... integrity protection is present. It is RECOMMENDED to use replay protection, both for RTP and RTCP, as integrity protection ...
... Secure RTCP follows the definition of Secure RTP. SRTCP adds three mandatory new fields (the SRTCP ...
... Message authentication for RTCP is REQUIRED, as it is the control protocol (e.g., it has a BYE packet) for RTP. Precautions must be taken so that the packet expansion ...


... keystream segment encrypts a single RTP packet. The process of encrypting a packet consists of generating the keystream segment ...
... keystream segment onto the payload of the RTP packet to produce the Encrypted Portion of the SRTP packet ...
... +---------------------------------+ v | Payload of RTP Packet |->(*) +---------------------------------+ | | ...
... keystream generators are defined. The NULL cipher is also defined, to be used when encryption of RTP is not required. The SRTP ...
... SSRC allows the use of the same key to protect distinct SRTP streams within the same RTP session, see the security caveats in Section 9.1. ...
... bits of keystream needed to encrypt the largest possible RTP packet (except for IPv6 "jumbograms ...
... "jumbograms" [RFC2675], which are not likely to be used for RTP-based multimedia traffic). This restriction on the maximum bit ...
... IV are distinct for any particular key. The failure to ensure this uniqueness could be catastrophic for Secure RTP. This is in contrast to the situation for RTP itself, which may be able to tolerate such ...
... uniqueness could be catastrophic for Secure RTP. This is in contrast to the situation for RTP itself, which may be able to tolerate such failures. It is RECOMMENDED that, if a dedicated security module is ...
... failures. It is RECOMMENDED that, if a dedicated security module is present, the RTP sequence numbers and SSRC either be generated or ...
... AES as a block cipher to be used in what we shall call "f8-mode of operation" RTP encryption. The AES f8-mode SHALL use the same ...
... SEQ, TS, SSRC SHALL be taken from the RTP header; ROC is from the cryptographic context ...
... AES-f8 to be used when a master key is shared between multiple streams within the same RTP session, see Section 9.1. ...
... The NULL cipher is used when no confidentiality for RTP/RTCP is requested. The keystream can be thought of as "000..0", i.e., the ...


... DOA) for multicast and group RTP sessions is a hard problem that needs a solution; while some promising proposals are being investigated [PCST1 ...
... The presence of mixers and translators does not allow data origin authentication in case the RTP payload and/or the RTP header are manipulated. Note that these types of middle entities also disrupt ...
... The presence of mixers and translators does not allow data origin authentication in case the RTP payload and/or the RTP header are manipulated. Note that these types of middle entities also disrupt end-to-end ...
... confidentiality (as the IV formation depends e.g., on the RTP header preservation). A certain trust model may choose to trust ...
... RFC3095]. A typical voice application produces 20 byte samples, and the RTP, UDP and IP headers need to be jointly ...


... SRTP implementation SHOULD be given the SSRC and MAY be given the initial RTP sequence number for the RTP stream ...
... RTP sequence number for the RTP stream by key management (thus, key management has a ...
... key management (thus, key management has a dependency on RTP operational parameters). Sending the RTP sequence number in the key management ...
... key management has a dependency on RTP operational parameters). Sending the RTP sequence number in the key management may be useful e.g., when the initial sequence number ...
... same master key between SRTP/SRTCP streams belonging to the same RTP session. First, sharing between SRTP ...
... First, sharing between SRTP streams belonging to the same RTP session is secure if the design of the synchronization mechanism, i.e., the ...
... IV, avoids keystream re-use (the two-time pad, Section 9.1). This is taken care of by the fact that RTP provides for unique SSRCs for streams belonging to the same RTP session ...
... RTP provides for unique SSRCs for streams belonging to the same RTP session. See Section 9.1 for further discussion. ...
... SRTP and SRTCP corresponding to one RTP session MAY share master keys (as they do by default). Note that message authentication ...
... SRTP and its corresponding SRTCP, and, between streams belonging to the same RTP session. ...
... bits. However, its use SHOULD be limited to specific, very simple scenarios. We recommend to limit its use when the RTP session is a simple unidirectional or bi-directional ...
... stream. This is because in case of multiple streams, it is difficult to trigger the re-key based on the <From, To> of a single RTP stream. For example, if several streams share a master key, there is no simple one-to-one ...
... Port number Relation to other RTP profiles: sender's order between FEC ...


... requiring the key, or some other parameter of cryptographic significance, to be unique per RTP/RTCP stream and packet. The pre- ...
... CM and AES-f8) allow master keys to be shared across streams belonging to the same RTP session by the inclusion of the SSRC in the IV ...
... SSRC in the IV. A master key MUST NOT be shared among different RTP sessions. Thus, the SSRC ...
... Thus, the SSRC MUST be unique between all the RTP streams within the same RTP session that share the same master key. RTP ...
... SSRC MUST be unique between all the RTP streams within the same RTP session that share the same master key. RTP itself provides an algorithm ...
... RTP streams within the same RTP session that share the same master key. RTP itself provides an algorithm for detecting SSRC ...
... an algorithm for detecting SSRC collisions within the same RTP session. Thus, temporary collisions could lead to temporary two-time pad, in the unfortunate event that SSRCs collide at a point in time ...
... start to transmit simultaneously, before SSRC collision are detected at the RTP level. Note also that even with distinct SSRCs ...
... As described, master keys MAY be shared between streams belonging to the same RTP session, but it is RECOMMENDED that each SSRC have its own master key. When master keys are shared among SSRC ...
... Note: in most typical applications (assuming at least one RTCP packet for every 128,000 RTP packets), it will be the SRTCP index that first reaches the upper limit, although the time until this occurs is very ...
... Note that if the master key is to be shared between SRTP streams within the same RTP session (Section 9.1), although the above bounds are on a per stream (i.e., per SSRC ...
... Confidentiality of the RTP Payload ...
... information deducible from this) will leak, but nothing else. As some RTP packet could contain highly predictable data, e.g., SID, it is important to use a cipher designed to resist known plaintext ...
... Confidentiality of the RTP Header ...
... In SRTP, RTP headers are sent in the clear to allow for header compression. This means that data such as payload type, ...
... identifier, and timestamp are available to an eavesdropper. Moreover, since RTP allows for future extensions of headers, we cannot foresee what kind of possibly sensitive ...
... Integrity of the RTP payload and header ...
... bit key, or a message authentication code with equivalent strength. Secure RTP SHOULD NOT be used without message authentication, except under the circumstances described in this section. It is important to note ...
... Weak authentication is acceptable when the RTP application is such that the effect of a small fraction of successful forgeries is ...
... negligible. If the application is stateless, then the effect of a single forged RTP packet is limited to the decoding of that particular packet. Under this condition, the size of the authentication tag ...
... authentication tag MUST ensure that only a negligible fraction of the packets passed to the RTP application by the SRTP receiver can be ...
... forgeries. This fraction is negligible when an adversary, if given control of the forged packets, is not able to make a significant impact on the output of the RTP application (see the example of Section 7.5). ...
... ciphertext so that it decrypts to an intelligible value. One important case is when it is difficult for an adversary to acquire the RTP plaintext data, since for many codecs ...
... Weak or null authentication MUST NOT be used when the RTP application makes data forwarding or access control ...
... makes data forwarding or access control decisions based on the RTP data. In such a case, an attacker may be able to subvert ...
... denial of service attack, though in the absence of message authentication, the RTP application will have inputs that are bit-wise correlated with the true value. Some ...
... tunnel mode (respectively, transport mode). When Secure RTP is used without message authentication ...
... attack [V02] shows that this is indeed the case for the standard RTP padding as discussed in reference to Figure 1, when used together with CBC mode. Later transform additions to SRTP ...
... IV formation of the f8-mode gives implicit authentication (IHA) of the RTP header, even when message authentication is not used. When IHA is used, an attacker ...
... message authentication is not used. When IHA is used, an attacker that modifies the value of the RTP header will cause the decryption process at the receiver to produce ...


... SRTP can be used as security protocol for the RTP/RTCP traffic in ...
... Consider one bi-directional RTP stream, as one RTP session. It is possible for the two parties to share the same master key in the two ...
... Consider one bi-directional RTP stream, as one RTP session. It is possible for the two parties to share the same master key in the two directions according to the principles of Section 9.1. The first ...
... The same considerations can be extended to the unicast scenario with multiple RTP sessions, where each session would have a distinct master key. ...
... Just as with (unprotected) RTP, a scalability issue arises in big groups ...
... setups with the distribution of master keys among the receivers. Given a single RTP session, one possibility is that the receivers share the same master key as per Section 9.1 to secure all their ...
... SRTP/SRTCP stream (within the same RTP session) that share the master key, the upper limit of 2^48 SRTP packets / 2^31 SRTCP packets means that, before one of the streams ...
... removed during a multicast RTP session), or for pure cryptographic reasons (e.g., the key is at the end of its lifetime ...
... - If multiple SRTP streams in the same RTP session share the same master key, also moderate rate re-keying MAY have the same ...


... The RTP specification establishes a registry of profile names for use ...
... profile registers the name "RTP/SAVP". SRTP ...


... Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A Transport Protocol for Real-time Applications", RFC 3550std64 ...
... Schulzrinne, H. and S. Casner, "RTP Profile for Audio and Video Conferences with Minimal Control", RFC 3551std65, July 2003. ...
... RObust Header Compression: Framework and Four Profiles: RTP, UDP, ESP, and uncompressed (ROHC ...
... ROHC): A Link-Layer Assisted Profile for IP/UDP/RTP ", RFC 3242prop(-> 4362prop), April 2002. ...


... PREFIX LENGTH : 0 RTP packet header : 806e5cba50681de55c621599 ...
... header : 806e5cba50681de55c621599 RTP packet payload : 70736575646f72616e646f6d6e657373 20697320746865206e65787420626573 ...



Google
Web
RFC-Ref