Re: [6tisch] differential security for CoAP resources

Thomas Watteyne <watteyne@eecs.berkeley.edu> Thu, 07 May 2015 16:24 UTC

Return-Path: <twatteyne@gmail.com>
X-Original-To: 6tisch@ietfa.amsl.com
Delivered-To: 6tisch@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E201B1ACDB3 for <6tisch@ietfa.amsl.com>; Thu, 7 May 2015 09:24:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.277
X-Spam-Level:
X-Spam-Status: No, score=-1.277 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=no
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 hNatC-HoD9eL for <6tisch@ietfa.amsl.com>; Thu, 7 May 2015 09:24:39 -0700 (PDT)
Received: from mail-wi0-x22b.google.com (mail-wi0-x22b.google.com [IPv6:2a00:1450:400c:c05::22b]) (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 AAEC81A0187 for <6tisch@ietf.org>; Thu, 7 May 2015 09:24:33 -0700 (PDT)
Received: by wief7 with SMTP id f7so17821388wie.0 for <6tisch@ietf.org>; Thu, 07 May 2015 09:24:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=A6GSYrXbQzkODYtKxxkbSOqLSiJlnzUel4xwqQNEenE=; b=EuCb32TtF6vK85/PM/XDUwXdD/lfJKMNOn9Yv8fmpCH1aUH5UqDNWkLfNQKO9/1FqA L5mQxe6n2+DRtxTbYtwqEBhwKBYbv2laVX5b3eTR63+6f36GduQsa98/1vBJQcylmZ1s 8bEbTFWUPDa8ezX+08uG4VVocq/J2BfOrp+5qVMn2v7KeCNJ3V8AsxzevmpadEKsTdk8 hoExLGmTWmo+CYielV7kKEEnfnM04BTl88CpirNOJz8Hp9qcJIcjlIt+fK28T7LsgyvH aJRNLnuJ/wtyaCtjK8l46H0wcTQiZR4xOqhdaAEIJDG/0UqwQt3icqn715k8fAc4nXoj awkg==
MIME-Version: 1.0
X-Received: by 10.195.12.48 with SMTP id en16mr9220130wjd.21.1431015872453; Thu, 07 May 2015 09:24:32 -0700 (PDT)
Sender: twatteyne@gmail.com
Received: by 10.28.57.133 with HTTP; Thu, 7 May 2015 09:24:32 -0700 (PDT)
In-Reply-To: <77960473.2501122.1431012981982.JavaMail.yahoo@mail.yahoo.com>
References: <CADJ9OA_TbHhAWpM5_-RBCMu2NwM+O-OQqKzgfomTM9LyLzncbw@mail.gmail.com> <77960473.2501122.1431012981982.JavaMail.yahoo@mail.yahoo.com>
Date: Thu, 07 May 2015 18:24:32 +0200
X-Google-Sender-Auth: Nc96mpvR4m1x9zq2udmNqt08ceo
Message-ID: <CADJ9OA8-cAqSc65rzLu33uLjM8w9ODYOOfU_ST1H_7Mj2W1rAA@mail.gmail.com>
From: Thomas Watteyne <watteyne@eecs.berkeley.edu>
To: Qin Wang <qinwang6top@yahoo.com>
Content-Type: multipart/alternative; boundary="047d7bf0d616bee1b00515805886"
Archived-At: <http://mailarchive.ietf.org/arch/msg/6tisch/yPKF_rj68YWAmj_zm_DmjO1QosY>
Cc: "6tisch@ietf.org" <6tisch@ietf.org>
Subject: Re: [6tisch] differential security for CoAP resources
X-BeenThere: 6tisch@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discuss link layer model for Deterministic IPv6 over the TSCH mode of IEEE 802.15.4e, and impacts on RPL and 6LoWPAN such as resource allocation" <6tisch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/6tisch>, <mailto:6tisch-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/6tisch/>
List-Post: <mailto:6tisch@ietf.org>
List-Help: <mailto:6tisch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6tisch>, <mailto:6tisch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 07 May 2015 16:24:42 -0000

Isn't that exactly authorization, for which (Half of) the A in ACE stands
for?

On Thursday, May 7, 2015, Qin Wang <qinwang6top@yahoo.com> wrote:

> To address Kris's question, I agree with Tero that there are two security
> elements involved, one is something like DTLS to secure the network access;
> another is ACL to guarantee right access to the database in devices.
>
> Thanks
> Qin
>
>
>
>
>   On Thursday, May 7, 2015 9:46 PM, Thomas Watteyne <
> watteyne@eecs.berkeley.edu
> <javascript:_e(%7B%7D,'cvml','watteyne@eecs.berkeley.edu');>> wrote:
>
>
> Kris,
>
> You're asking the right questions...
>
> To keep 6TiSCH focused, we chose to "outsource" all centralized management
> to CoMI/CoAP, and focus on the data model.
> The assumption here is that everything you describe (for the centralized
> case) is handled by CoAP's security mechanism.
> The authorization aspect being currently handled by ACE.
> Unfortunately, I haven't been following the ACE work closely.
> Can anyone shine a light on whether ACE is handling all of Kris' concerns?
>
> For the distributed CoAPIE case,
> https://tools.ietf.org/html/draft-wang-6tisch-6top-coapie-00 doesn't
> focus on security (it's a -00). IMO, there are two options:
> - we consider CoAPIE security to be part of L2 security. That is, a
> network-wide PSK, or neighbor-by-neighbor keys installed by the JCE
> - the CoAPIE also encapsulates the DTLS record. Packet will be (much)
> bigger, and neighbor-to-neighbor authentication would be needed.
>
> Thomas
>
> On Thu, May 7, 2015 at 9:29 AM, Mališa Vučinić <Malisa.Vucinic@imag.fr
> <javascript:_e(%7B%7D,'cvml','Malisa.Vucinic@imag.fr');>> wrote:
>
> Kris,
>
> Some comments inline.
>
> Regards,
> Mališa Vučinić
>
> On 06 May 2015, at 17:34, Kris Pister <ksjp@berkeley.edu
> <javascript:_e(%7B%7D,'cvml','ksjp@berkeley.edu');>> wrote:
>
> Mote M has a number of CoAP resources, including temperature and light
> sensors
> coap://M/S/T and /S/L
> as well as 6top resources such as slotframes and cells
> /6t/6/sf1 and /6t/4/c12_14      (I don't actually know the format).
>
> I might want to allow anyone (host A) on the internet to access the
> temperature, /S/T,
> but only a select few to access anything in /6t.  Maybe some with READ (L2
> neighbors, B),
> maybe only one with DELETE (e.g. the PCE, C).
>
> Today the assumption is that we will have a DTLS session to protect these
> resources.
> Some problems that I see:
> What is the mechanism that the mote uses to differentiate between A, B,
> and C?
> Let's assume that the hand-off between the DTLS module and the CoAP module
> tells CoAP if the packet was properly encrypted (vs. the hand-off from
> UDP).  My
> mote needs some sort of table that binds resources to security
> requirements.  That
> takes care of host A asking for temperature (OK) vs. slotframe info (not
> allowed if
> not protected with DTLS).
>
> But how does the mote differentiate between a READ and a DELETE from mote B
> or C?  Both will be encrypting their requests with DTLS.  Does the mote
> need a
> table of hosts, each with a list of resources, each resource with a 4 bit
> flag of
> permissions?
>
>
> If we want to avoid additional packet exchanges with JCE, I believe it is
> necessary to locally keep such a table. We could for instance optimize this
> with some sort of .htaccess for 6top.
>
> However, I am a bit skeptical of having DTLS sessions with both B and C,
> where B can be the set of all the radio neighbors of the mote. Consider
> that DTLS handshake exchanges 10+ packets and for instance in tinyDTLS
> implementation, each session occupies around 400B of RAM. This session
> overhead is certainly necessary with PCE and JCE but I am not sure if it’d
> be wise to do it for each radio neighbor.
>
>
> And what about OTF, where we will be sending CoAP packets as MLME IEs
> protected
> at layer2?
>
> I know that ACE is working on this, and I'm trying to understand the three
> competing
> solutions and their impact on 6TiSCH.  No matter what they do, it won't
> completely
> solve the OTF/coapIE problem.
>
>
> I agree - this is very specific to 6TiSCH and I don’t really see how we
> could leverage [1] / DTLS to differentiate OTF CoAP exchanges within the
> IEs. Outside of ACE, I noticed some work around COSE (CBOR Object Signing
> and Encryption) [2] that should provide an optimized cryptographic format
> which 6TiSCH could use at any layer (generic formats for encryption, MIC,
> signature). IEs carrying CoAP could therefore have the CoAP payload
> encrypted/authenticated/replay-protected with COSE and by managing
> different keys we could differentiate the access to different resources.
> [3] in fact specifies how a generic crypto format such as COSE could be
> used to also encrypt/authenticate parts of the CoAP header.
>
> [1] https://tools.ietf.org/html/draft-gerdes-ace-dcaf-authorize-02
> [2] http://www.ietf.org/mail-archive/web/cose/current/maillist.html
> [3] https://tools.ietf.org/html/draft-selander-ace-object-security-01
>
>
>
>
> _______________________________________________
> 6tisch mailing list
> 6tisch@ietf.org <javascript:_e(%7B%7D,'cvml','6tisch@ietf.org');>
> https://www.ietf.org/mailman/listinfo/6tisch
>
>
>
> _______________________________________________
> 6tisch mailing list
> 6tisch@ietf.org <javascript:_e(%7B%7D,'cvml','6tisch@ietf.org');>
> https://www.ietf.org/mailman/listinfo/6tisch
>
>
>