Re: [http-auth] Normalization forms in draft-ietf-httpauth-basicauth-enc

Julian Reschke <julian.reschke@gmx.de> Mon, 01 July 2013 06:00 UTC

Return-Path: <julian.reschke@gmx.de>
X-Original-To: http-auth@ietfa.amsl.com
Delivered-To: http-auth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 13F1F21F9CD9 for <http-auth@ietfa.amsl.com>; Sun, 30 Jun 2013 23:00:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.116
X-Spam-Level:
X-Spam-Status: No, score=-105.116 tagged_above=-999 required=5 tests=[AWL=-2.817, BAYES_00=-2.599, MIME_8BIT_HEADER=0.3, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mbfuswbPJBd2 for <http-auth@ietfa.amsl.com>; Sun, 30 Jun 2013 23:00:05 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by ietfa.amsl.com (Postfix) with ESMTP id 0E53521F9CB3 for <http-auth@ietf.org>; Sun, 30 Jun 2013 23:00:04 -0700 (PDT)
Received: from mailout-de.gmx.net ([10.1.76.31]) by mrigmx.server.lan (mrigmx002) with ESMTP (Nemesis) id 0MZRZ5-1Uf1bt0Dnx-00LJFd for <http-auth@ietf.org>; Mon, 01 Jul 2013 08:00:04 +0200
Received: (qmail invoked by alias); 01 Jul 2013 06:00:03 -0000
Received: from p5DD96C36.dip0.t-ipconnect.de (EHLO [192.168.2.117]) [93.217.108.54] by mail.gmx.net (mp031) with SMTP; 01 Jul 2013 08:00:03 +0200
X-Authenticated: #1915285
X-Provags-ID: V01U2FsdGVkX19xyLksXt5xsMxefA5NHRD8i5KqjjEIqldYsNRK44 BRySTJiZRS9Xgl
Message-ID: <51D11AD4.5050705@gmx.de>
Date: Mon, 01 Jul 2013 07:59:48 +0200
From: Julian Reschke <julian.reschke@gmx.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: "\"Martin J. Dürst\"" <duerst@it.aoyama.ac.jp>
References: <20130630142838.31885.15315.idtracker@ietfa.amsl.com> <51D04326.5060600@gmx.de> <DEA2EA74-7587-4CAA-9424-4478B136308E@vpnc.org> <51D09F98.2070508@gmail.com> <D434C8F9-D3DC-40EB-A25A-3A259C1A22E6@vpnc.org> <51D1175C.3020007@it.aoyama.ac.jp>
In-Reply-To: <51D1175C.3020007@it.aoyama.ac.jp>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Y-GMX-Trusted: 0
Cc: http-auth@ietf.org, Paul Hoffman <paul.hoffman@vpnc.org>
Subject: Re: [http-auth] Normalization forms in draft-ietf-httpauth-basicauth-enc
X-BeenThere: http-auth@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: HTTP authentication methods <http-auth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/http-auth>, <mailto:http-auth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/http-auth>
List-Post: <mailto:http-auth@ietf.org>
List-Help: <mailto:http-auth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/http-auth>, <mailto:http-auth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Jul 2013 06:00:11 -0000

On 2013-07-01 07:45, "Martin J. Dürst" wrote:
>
>
> On 2013/07/01 6:35, Paul Hoffman wrote:
>> On Jun 30, 2013, at 2:14 PM, Yaron Sheffer<yaronf.ietf@gmail.com>  wrote:
>>
>>> Paul, your proposed text doesn't make sense to me, because with Basic
>>> auth, the server might keep a hash of the password instead of the raw
>>> password (to reduce the damage if the entire database gets stolen).
>>> In which case I would expect the server to normalize the password
>>> before it is being hashed without any check of the "expected value".
>>
>> The process that is checking for equivalence is not necessarily the
>> process that stored the (possibly normalized) password, and the two
>> processes might have different views of what normalization to use.
>
> That's definitely an important aspect of the problem, and should be
> called out. In particular, it's important to say that if you don't
> normalize when creating a password hash, then in the odd case that you
> get something half-baked (e.g. half in NFC and half in NFD,...), then
> it's going to be very hard to get back to the original form.
>
>> Normalizing takes time.
>
> Well, that's often brought up but not really very true or relevant.
>
> First, it's easily possible to make normalization fast. In particular,
> it is possible to make normalization very fast for the frequent cases.
> (It's also possible to make it slow, but that's true of any kind of
> processing.)
>
> Second, security-related calculations (hashes,...) are regularly
> designed so as to not be too fast. So normalization shouldn't be the
> bottleneck.
>
> Regards,   Martin.

So what if we mandated normalization to happen on the client?

Best regards, Julian