Re: [Taps] I-D Action: draft-ietf-taps-transport-security-03.txt

"Christopher Wood" <christopherwood07@gmail.com> Sun, 04 November 2018 00:34 UTC

Return-Path: <christopherwood07@gmail.com>
X-Original-To: taps@ietfa.amsl.com
Delivered-To: taps@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BC97C128BCC for <taps@ietfa.amsl.com>; Sat, 3 Nov 2018 17:34:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.75
X-Spam-Level:
X-Spam-Status: No, score=-1.75 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jsneicOD1Tis for <taps@ietfa.amsl.com>; Sat, 3 Nov 2018 17:34:08 -0700 (PDT)
Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com [IPv6:2607:f8b0:4864:20::636]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2AB8012D4E9 for <taps@ietf.org>; Sat, 3 Nov 2018 17:34:07 -0700 (PDT)
Received: by mail-pl1-x636.google.com with SMTP id f12-v6so1514529plo.1 for <taps@ietf.org>; Sat, 03 Nov 2018 17:34:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vfoKi0xnV4HI0S5bUUDWFBCCJMn92fiQfDNCbyOUEpc=; b=Y8KIsj49pVBLV1vBJqS/rK8Db2ybC/BA69ppNHqZ90Co8nKpH18PIpd3aTas5NaR+n KsiLvII0FAr/3Qy4bgx7aKAC7oOuGJAGtWQBtbif/hIUsCfkOqRiC1oIyWenxvUEhY/v 4/jlMSGF5dP/jwVgzBfar9wGcheYZ1CWFY/HKffNcscHXY4gDFzUQ0aU//qUHqOPtb9O ziE1gQa2n5vQul4wwBlMLigaAj2hYT5jhEJyD1+ZpMCq10szW9Bx97FMjCk4Wn756N+p hcHQCLm8zDBWGqXlwcxcq+sfacBFxziq5mvVWic7FH/ljkKBFVz9WZzYZGlj017f/QS/ sjaw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=vfoKi0xnV4HI0S5bUUDWFBCCJMn92fiQfDNCbyOUEpc=; b=IhFxk5OWeWCFmVa7C+5bOHKWq7hjpegGUxWys5Z8LD1KJWW0xvC2OzTTJMXNuaH/Fj uNkSVja974I3JulULcD4O8LoZBTWa4CJefpkk4M1TVt2SDqI5VHx1t1SmbS1Q9uCmJoM /5nf6o/UuU9OLPc2kubRpYj70onGAT7jybgh+4QI2h3z3LYVcq0pPUy/0c2MQwvr7aPF 8beetxcfv7HOYLEbRv9IBxTq9KYsOpnDU5WkAkwbEhNrUJm2/tQ1WQBe2sjhmTX3Yj1b nP7OUrFXGEztiKZ0vgx3St1sS5VmeNP4VnOhueDWB6h06hUDDDuh41sQx/zbq2JeaEB1 QL5g==
X-Gm-Message-State: AGRZ1gIHJyOCknLpsKEdnk7dR91urgyQfNG6z5q2Mg4Q64Sj4Y4GVZvR aIYFfECNx1JnfQOdXaRER8Rn9qGS
X-Google-Smtp-Source: AJdET5cDt5tFbF80cEFONVRd1so1T4YngVOKlaZ6gKsGBBkueCpgFIfzMm25NuvMwahnC1O5+0Gc0g==
X-Received: by 2002:a17:902:404:: with SMTP id 4-v6mr17302498ple.331.1541291646478; Sat, 03 Nov 2018 17:34:06 -0700 (PDT)
Received: from [31.133.146.108] ([2001:67c:1232:144:18b9:d957:a87e:caee]) by smtp.gmail.com with ESMTPSA id u76-v6sm26945122pfa.176.2018.11.03.17.34.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 03 Nov 2018 17:34:05 -0700 (PDT)
From: Christopher Wood <christopherwood07@gmail.com>
To: Theresa Enghardt <theresa@inet.tu-berlin.de>
Cc: taps@ietf.org
Date: Sun, 04 Nov 2018 07:33:35 +0700
X-Mailer: MailMate (1.12r5523)
Message-ID: <DBDEF428-33A7-486B-BE00-72E0549F45FF@gmail.com>
In-Reply-To: <302b8870-2473-8ae3-b196-7c62850c97c1@inet.tu-berlin.de>
References: <154022748014.6890.5464777930050299508@ietfa.amsl.com> <6fb7824e-b24e-1b88-f8eb-3e8005906e1b@inet.tu-berlin.de> <CAO8oSXkNDXOn_C-OOFcLQeZS94pZVgjT4AnvuD8wV76M=RDPyQ@mail.gmail.com> <302b8870-2473-8ae3-b196-7c62850c97c1@inet.tu-berlin.de>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/taps/e5K3YwP3-TYMzNYVU155-8v5Aag>
Subject: Re: [Taps] I-D Action: draft-ietf-taps-transport-security-03.txt
X-BeenThere: taps@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IETF Transport Services \(TAPS\) Working Group" <taps.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/taps>, <mailto:taps-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/taps/>
List-Post: <mailto:taps@ietf.org>
List-Help: <mailto:taps-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/taps>, <mailto:taps-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 04 Nov 2018 00:34:11 -0000

Hi Theresa,

Apologies for the delayed response. Please see inline below.

On 27 Oct 2018, at 1:03, Theresa Enghardt wrote:

> Hi Chris,
>
> I'm replying to your questions inline:
>
> On 27.10.2018 07:05, Christopher Wood wrote:
>>
>>
>>     In Section 5, the document groups security features into 
>> mandatory and
>>     optional features, and states their transport dependency and
>>     application
>>     dependency. Application dependency, for me, relates to whether a
>>     feature
>>     is "functional", "optimizing", or "automatable" (in minset
>>     terminology).
>>     For example, if there is no application dependency, the feature 
>> is
>>     "automatable" and does not have to be exposed to the application. 
>> In
>>     contrast, a "function" feature needs to be exposed to the 
>> application.
>>
>>
>> What specifically do you think should change here?
>
> I suggest to define "application dependency" at the beginning of 
> Section
> 5 -- it states what the application needs to know about the security
> feature for it to work, right? Is the application knowing about the
> feature always mandatory, or is this sometimes optional?

Thanks for clarifying. I addressed this in the following PR:

    https://github.com/mami-project/draft-pauly-transport-security/pull/46/

>
> Additionally, it might be useful to define what we mean by "transport
> dependency". If this means that a security feature can only be 
> provided
> when a certain transport feature is in place, then I'm not sure I
> understand the transport dependency of "Source validation". Does this
> mean that source validation only works with streams? Or does it work
> differently depending on whether we have streams or datagrams?

Indeed, the transport dependencies as written are not really clear. For 
source
validation, the intent was to capture that this feature is only 
“available”
(and useful) for connectionless transports. I ended up removing them in 
the
PR above since, upon reflection, they seem to only add noise.

>
>>
>>     In Section 5.1, I am missing transport dependency and application
>>     dependency for the mandatory transport features. For example, I
>>     would be
>>     interested to know what is the minimum that the transport system 
>> needs
>>     to expose to the application for public-key based authentication?
>>
>>
>> The mandatory features are those which must be provided regardless of
>> the transport features. Thus, we list no transport dependencies.
>
> I see, and I think it would help me to reduce confusion to clarify 
> this
> in the document.
>
> Are there any application dependencies for mandatory transport 
> features?
> For example, I would expect at least public-key authentication and
> pre-shared key support to be application-dependent.

Fair point. Upon reflection it seems that the PSK feature should 
certainly not
be mandatory for a security protocol, since (a) it’s not supported by 
all surveyed
protocols and (b) it necessarily requires application input. Most modern 
operating
systems have a default trust store which aids in certificate-based 
authentication,
so I think it’s fine to omit any application dependency there. I 
updated the relevant
text in the PR listed above.

>
>>
>>
>>     In Section 5, do we want to mention any security features related 
>> to
>>     integrity protection?
>>
>>
>> No, I don’t think so. What would be the purpose?
>
> For example, "Record (channel or datagram) confidentiality and
> integrity" is defined as a security feature in Section 3, but then not
> mentioned in Section 5 at all. This surprises me as a reader, I would
> have expected it to be listed as a mandatory feature.
> Perhaps it is reflected as "segment or datagram encryption and
> authentication", which was actually the definition of "Record (channel
> or datagram) confidentiality and integrity" given in Section 3, but 
> then
> I'm confused about the change in terminology.

This is another instance of terminology mismatch that I corrected in the 
PR above.
Indeed, the first mandatory feature listed in -03 as “Segment or 
datagram encryption and authentication”
is meant to be the same thing.

>
> As another example: "Optional record integrity" shows up in Section 3
> but not in Section 5.
>
> If Section 5 is just a subset of the security features listed in 
> Section
> 3, I would appreciate some text in Section 5 to explain why these
> features were chosen and not others.

This is another oversight :-) I hope the PR above clears this up.

>
>>     As far as I can see, none of the protocols we survey provide any
>>     features explicitly providing privacy. Maybe this is worth
>>     highlighting
>>     in the Security considerations section, beyond saying that no
>>     claims of
>>     privacy properties are made.
>>
>>
>> This is a tough one. Depending on one’s level of pessimism, none of
>> these protocols provide much in the way of privacy. However, in the
>> case of TLS, we often think of privacy as confidentiality of data
>> involved. Information is often leaked in other ways, e.g., via the
>> SNI. It all boils down to your definition of privacy, of which we 
>> have
>> no formal definition. Thus, I’m hesitant to say more than, e.g., 
>> “we
>> do not consider privacy aspects of security protocols.”
>
> I understand, but I would also find it very interesting to at least
> mention, e.g., (reduction of) information leakage as an aspect related
> to privacy. I'm not sure it could be formalized as a security 
> features,
> given the lack of formal definition of privacy.	

Noted. I filed this PR: 
https://github.com/mami-project/draft-pauly-transport-security/pull/45

>
>
> Thanks, and thanks for the discussion!

My pleasure! Thank you again for the comments and feedback.

Best,
Chris