RFC 4568 (mmusic-sdescriptions) talks about an SRTP Cryptographic Context and 
its parameters (inherited from RFC 3711; avt-srtp). This is important when the 
context changes because the parameter "Rollover Counter" (ROC) must be reset 
then. The ROC was increased when the RTP sequence number (SEQ) wrapped from 
0xffff to 0x0000. So far, so easy.

My question:
What exactly is not part of the SRTP Cryptographic Context? I am facing this 
question in the Call Hold scenario from RFC 5359 (sipping-service-examples; 
section 2.1).

Two real-world examples:

Example 1:
I have an AVM FRITZ!OS as Bob. Alice calls Bob. Alice offers AES-128 and 
AES-256. Bob goes for AES-128 because that has the lowest tag number. Later, 
Bob puts Alice on hold. Bob takes Alice off hold and offers AES-256 and 
AES-128. Alice goes for AES-128 because (just an example) she wants to avoid 
the computation overhead of AES-256.

In this example, the crypto-suite and the crypto-key for AES-128 did not 
change. After the resume, just the crypto-tag in SDP changed from 1 to 2. Is 
the parameter "tag" part of the cryptographic context? If yes, the ROC must be 
reset to zero.

Example 2:
I have a Snom D725 as Bob. Alice calls Bob and offers HMAC_SHA1_80. Bob goes 
for it. Bob puts Alice on hold. Bob takes Alice off hold and offers 
HMAC_SHA1_32. That is the default behavior of a Snom, which can be changed in 
its Web interface. Anyway, if I am not totally misreading the RFCs, this is 
allowed. Now, Alice can accept that or not. Let us assume Alice accepts that.

In this example, the crypto-key (and crypto-tag) did not change. The 
crypto-suite changed, but not the crypto part, just the authentication
tag. Is the parameter "authentication tag" part of the cryptographic context? 
If yes, the ROC must be reset to zero.

Current situation:
In example 1, AVM (with an upcoming FRITZ!OS 7.2x) is going to reset the ROC 
(because of another change in code). In example 2, Snom (currently firmware 
10.1.64.14) does not reset the ROC.

In other words, does a change to the
  authentication tag length (RFC 4568 section 6.2.2) or
  tag number (RFC 4568 section 4.1)
trigger a reset of the ROC?


_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to