Re: [kitten] The Hashed-Token SASL Mechanism (SASL-HT)

Florian Schmaus <flo@geekplace.eu> Sun, 05 November 2017 15:32 UTC

Return-Path: <fschmaus@gmail.com>
X-Original-To: kitten@ietfa.amsl.com
Delivered-To: kitten@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2CB5613FBA5 for <kitten@ietfa.amsl.com>; Sun, 5 Nov 2017 07:32:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.219
X-Spam-Level:
X-Spam-Status: No, score=-1.219 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.199, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=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 ZhxA-bKTUuOI for <kitten@ietfa.amsl.com>; Sun, 5 Nov 2017 07:32:29 -0800 (PST)
Received: from mail-wm0-f51.google.com (mail-wm0-f51.google.com [74.125.82.51]) (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 2B3C313FB7F for <kitten@ietf.org>; Sun, 5 Nov 2017 07:32:29 -0800 (PST)
Received: by mail-wm0-f51.google.com with SMTP id r68so6611230wmr.0 for <kitten@ietf.org>; Sun, 05 Nov 2017 07:32:29 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to; bh=kImTjdX+7Wr5OEmad9MwQSM3KbBomogWT9sx2nzDk68=; b=VVFCx1vFFXH2SzejbztD1xcvYU+QvOC3LY+0ndRpJsX0dAhev6yEgCLbgu+9dcx4hS NIQjXMD3R6PotPsUDFB0GT8KIwTh5C5SGSlKztXpCn5TnqpH3IGZ7XcGEyFdyY/uB9Rs vjZ4aFigM8TNAkqLbeyNAoVVt11FlowbtD2qbQXdmdpU7ti7ad2MKPUPXNbCn6HfM2Gx ZWV/EzVYtGGAWW4ihe825u5VHPDnQb6a9jhaXq9ISgSbIfQH/eJug4iQYRGEnUgDLFzH nVmaGIH/wzKmu1kzQkpxW/igT1ToARhfbC5hbAJjLIayfwAnld8C257ymYvPec+tC4Wa iw2Q==
X-Gm-Message-State: AMCzsaVlBLcTtYayQi8CzgQF7WDcLGhsjiVVe3V2mgJn6/D27bVvPWth to528MaceSf2X7loEq+mx9k=
X-Google-Smtp-Source: ABhQp+RNhWmBnhZDnp3zMAwpKASvq1iwd7PQXB3De4UaqgrYnfL85vKF2mzy/zc6ZfCp+jwp19qJeQ==
X-Received: by 10.80.164.24 with SMTP id u24mr16232196edb.11.1509895947311; Sun, 05 Nov 2017 07:32:27 -0800 (PST)
Received: from ?IPv6:2001:a62:11ea:101:adb1:1e2b:c5cc:a70c? ([2001:a62:11ea:101:adb1:1e2b:c5cc:a70c]) by smtp.googlemail.com with ESMTPSA id 41sm9384292edz.66.2017.11.05.07.32.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 05 Nov 2017 07:32:26 -0800 (PST)
To: kitten@ietf.org
Cc: Simo Sorce <simo@redhat.com>
References: <9913d71b-ae22-cc48-34b8-fb29fdf9a00c@geekplace.eu> <20171016025117.GL96685@kduck.kaduk.org> <1508245337.6230.31.camel@redhat.com>
From: Florian Schmaus <flo@geekplace.eu>
Message-ID: <1fc6c84a-94b7-15d2-5311-20a64e8b63a8@geekplace.eu>
Date: Sun, 05 Nov 2017 16:32:24 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <1508245337.6230.31.camel@redhat.com>
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="9PHQkdotubTprQWNBT4hLBnA6D92R37p9"
Archived-At: <https://mailarchive.ietf.org/arch/msg/kitten/jZSWr2FwQ5bixkrsGR09oCMKDM8>
Subject: Re: [kitten] The Hashed-Token SASL Mechanism (SASL-HT)
X-BeenThere: kitten@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Common Authentication Technologies - Next Generation <kitten.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/kitten>, <mailto:kitten-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/kitten/>
List-Post: <mailto:kitten@ietf.org>
List-Help: <mailto:kitten-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 05 Nov 2017 15:32:31 -0000

On 17.10.2017 15:02, Simo Sorce wrote:
> I think this draft has many goals in common with this one:
> https://tools.ietf.org/html/draft-wibrown-ldapssotoken-02
> 
> I wonder if we can end up having a solution that will work well to
> cover it all ?
> 
> The main issue here would be the requirement to bind it to TLS as LDAP
> (as well as other connection-oriented protocols) can use other means to
> encrypt the channel (namely GSSAPI, although GSSAPI doe not have a
> session resumption mechanism ...).

I had a look at ldapssotoken. Although I have worked with LDAP in the
past, I wouldn't consider myself an expert. What follows is a short
summary of how I understand ldapssotoken and the differences between
sasl-ht.

The ldapssotoken I-D allows the creation of tokens for different
services which can be relayed by middleware. This enables a SSO
experience without the need of Kerberos. It also specifies a SASL
mechanism which transports the token to the LDAP server for
verification/authentication. Tokens can also be revoked at the LDAP server.

The major difference between ldapssotoken and sasl-ht is that the latter
uses short lived exclusively ephemeral tokens. That is, the token is
immediately revoked after it has been used. IMHO this is a necessary
requirement: For increased security the lifetime of the token should be
as short as possible.

Furthermore SASL HT-* enables mutual authentication of initiator and
responder using channel binding, and therefore it is required that SASL
HT-* is performed over TLS. Mutual authentication is a very desirable
property of an SASL mechanism, especially for one using short lived
tokens for authentication.

Also sasl-ht specifies a SASL mechanism and nothing more. But it can
only be used with an application protocol specific extension like [1]. I
think it is advantageous that those two parts are kept separate.

In summary, while both I-D use tokens, I think they do not try to
achieve the exact same goals.

Therefore I am not sure if it is sensible to merge those two I-Ds into one.


Some unrelated remarks and possibly nits about
draft-wibrown-ldapssotoken-02:
- It talks about authid when it should possibly be authcid?
- Security Strength Factor seems to be nowhere defined in a RFC?

- Florian

1: http://geekplace.eu/xeps/xep-isr-sasl2/xep-isr-sasl2.html