RFC 3329 (rfc3329) - Page 3 of 24
Security Mechanism Agreement for the Session Initiation Protocol (SIP)
Alternative Format: Original Text Document
RFC 3329 SIP Security Agreement January 2003 security. However, SIP is also expected to be deployed to hundreds of millions of small devices with little or no possibilities for coordinated security policies, let alone software upgrades, which necessitates the need for the negotiation functionality to be available from the very beginning of deployment (e.g., see [11]). 1.2 Design Goals 1. The entities involved in the security agreement process need to find out exactly which security mechanisms to apply, preferably without excessive additional roundtrips. 2. The selection of security mechanisms itself needs to be secure. Traditionally, all security protocols use a secure form of negotiation. For instance, after establishing mutual keys through Diffie-Hellman, IKE sends hashes of the previously sent data including the offered crypto mechanisms [8]. This allows the peers to detect if the initial, unprotected offers were tampered with. 3. The entities involved in the security agreement process need to be able to indicate success or failure of the security agreement process. 4. The security agreement process should not introduce any additional state to be maintained by the involved entities. 1.3 Conventions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14, RFC 2119 [9]. 2. Solution 2.1 Overview of Operation The message flow below illustrates how the mechanism defined in this document works: 1. Client ----------client list---------> Server 2. Client <---------server list---------- Server 3. Client ------(turn on security)------- Server 4. Client ----------server list---------> Server 5. Client <---------ok or error---------- Server Figure 1: Security agreement message flow. Arkko, et. al. Standards Track



