KDF definition and goal [was: [Cfrg] Fwd: Hash-Based Key Derivation]

David Wagner <daw@cs.berkeley.edu> Tue, 25 October 2005 22:41 UTC

Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1EUXTq-0000QT-Q0; Tue, 25 Oct 2005 18:41:18 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1EUXTp-0000QO-KJ for cfrg@megatron.ietf.org; Tue, 25 Oct 2005 18:41:17 -0400
Received: from ietf-mx.ietf.org (ietf-mx [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA20035 for <cfrg@ietf.org>; Tue, 25 Oct 2005 18:41:01 -0400 (EDT)
Received: from taverner.cs.berkeley.edu ([128.32.168.222]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1EUXgr-0004tk-C0 for cfrg@ietf.org; Tue, 25 Oct 2005 18:54:46 -0400
Received: from taverner.CS.Berkeley.EDU (localhost.localdomain [127.0.0.1]) by taverner.CS.Berkeley.EDU (8.13.1/8.13.1) with ESMTP id j9PMf4MV023346 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 25 Oct 2005 15:41:04 -0700
Received: (from daw@localhost) by taverner.CS.Berkeley.EDU (8.13.1/8.13.1/Submit) id j9PMf4LG023342; Tue, 25 Oct 2005 15:41:04 -0700
From: David Wagner <daw@cs.berkeley.edu>
Message-Id: <200510252241.j9PMf4LG023342@taverner.CS.Berkeley.EDU>
Subject: KDF definition and goal [was: [Cfrg] Fwd: Hash-Based Key Derivation]
To: cfrg@ietf.org
Date: Tue, 25 Oct 2005 15:41:04 -0700
Secret-Bounce-Tag: 9a029cbee41caf2ca77a77efa3c13981
X-Mailer: ELM [version 2.5 PL6]
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 0bc60ec82efc80c84b8d02f4b0e4de22
Content-Transfer-Encoding: 7bit
X-BeenThere: cfrg@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
Reply-To: David Wagner <daw-usenet@taverner.CS.Berkeley.EDU>
List-Id: Crypto Forum Research Group <cfrg.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:cfrg@ietf.org>
List-Help: <mailto:cfrg-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@ietf.org?subject=subscribe>
Sender: cfrg-bounces@ietf.org
Errors-To: cfrg-bounces@ietf.org

David McGrew writes:
>Okay, I got carried away and wrote up the following definition and
>goal for a key derivation function (KDF) which seems appropriate and
>also seems amenable to reduction-based security proofs.  Comments welcome.

I'm afraid I don't think this is the right formulation.  Your definition
is only relevant to practice if we assume that our source of secret
inputs has a certain special class of distributions: namely, that some
fixed number of bit positions will be uniformly random and independent
of everything else.  In many settings this is not realistic.

Consider, for example, using a Diffie-Hellman shared secret g^{xy}
as your secret input.  This does not come from your special class of
distributions, since there is no bit position that is independent of
all others.  Thus proving that a candidate KDF meets your definition
will not be sufficient to show that the KDF can be safely used with
Diffie-Hellman shared secrets.  The problem is pervasive and not limited
to Diffie-Hellman.

I gave a competing definition that I find more useful in practice, and
that is easy to achieve in the random oracle model, and that guarantees
the KDF will be secure and useful when applied to any secret input
whose distribution satisifies a few weak conditions (high min-entropy,
independence from the hash, efficiently samplable).  I can spell it out
more precisely if you like, though I don't think there would be anything
especially new or surprising in a more detailed statement.  The only
bad news is that my competing definition seems to require that the KDF
use random oracles, but in my opinion that's not the end of the world.

_______________________________________________
Cfrg mailing list
Cfrg@ietf.org
https://www1.ietf.org/mailman/listinfo/cfrg