Subject: [rtcweb] ALPN question - optional confidentiality

From: Harald Alvestrand <[email-masked]>
Date: Tue, 05 Aug 2014 05:24:53 -0700

In draft-ietf-rtcweb-alpn-00, the following text occurs:

   Only one of these labels can be used for any given session.  A peer
   acting in the client role MUST NOT offer both identifiers.  A peer in
   the server role that receives a ClientHello containing both labels
   MUST reject the session, though it MAY accept the confidential option
   and protect content accordingly.

I can't make this match up in my head; the MAY seems to contradict the MUST.

If a client sends a ClientHello(c-webrtc, webrtc), the MUST seems to say
that the server MUST reject the session, while the MAY seems to say that
the server MAY do Accept(c-webrtc).

Suggested reformulation:

If a client offers both c-webrtc and webrtc, the server MAY accept
c-webrtc, but MUST NOT accept webrtc (possibly add: because this makes a
downgrade attack possible???)

-- 
Surveillance is pervasive. Go Dark.