Re: [dhcwg] DUID on a Virtual Host

"David W. Hankins" <David_Hankins@isc.org> Fri, 02 March 2007 04:53 UTC

Return-path: <dhcwg-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1HMzlk-0001OF-VS; Thu, 01 Mar 2007 23:53:24 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1HMzlk-0001J3-8Q for dhcwg@ietf.org; Thu, 01 Mar 2007 23:53:24 -0500
Received: from the.hankinsfamily.info ([204.152.186.148] helo=hankinsfamily.info) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1HMzli-0003P0-R1 for dhcwg@ietf.org; Thu, 01 Mar 2007 23:53:24 -0500
Received: from navarre.mercenary.net (c-24-6-52-107.hsd1.ca.comcast.net [24.6.52.107]) (authenticated bits=0) by hankinsfamily.info (8.13.8/8.13.8) with ESMTP id l224r7n3002714 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <dhcwg@ietf.org>; Thu, 1 Mar 2007 20:53:08 -0800
Received: by navarre.mercenary.net (Postfix, from userid 1000) id 2925E2F220; Thu, 1 Mar 2007 20:53:09 -0800 (PST)
Date: Thu, 01 Mar 2007 20:53:09 -0800
From: "David W. Hankins" <David_Hankins@isc.org>
To: dhcwg@ietf.org
Subject: Re: [dhcwg] DUID on a Virtual Host
Message-ID: <20070302045308.GB4494@isc.org>
References: <8E296595B6471A4689555D5D725EBB21035095C8@xmb-rtp-20a.amer.cisco.com> <200702201524.l1KFOQO4026527@cichlid.raleigh.ibm.com> <39C363776A4E8C4A94691D2BD9D1C9A101774702@XCH-NW-7V2.nw.nos.boeing.com> <45DB65B8.7080107@us.ibm.com> <E8F789A0-772A-4B56-9AFF-D0925A0FF5EC@nominum.com> <20070301234628.GD20815@isc.org> <986E53D9-2A76-480E-8098-8F7466378E87@nominum.com> <20070302004546.GF20815@isc.org> <37AA4D8B-BA12-434A-83D0-FBFE4C709C07@nominum.com>
Mime-Version: 1.0
In-Reply-To: <37AA4D8B-BA12-434A-83D0-FBFE4C709C07@nominum.com>
User-Agent: Mutt/1.5.9i
X-Spam-Score: 0.1 (/)
X-Scan-Signature: 287c806b254c6353fcb09ee0e53bbc5e
X-BeenThere: dhcwg@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: dhcwg.ietf.org
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:dhcwg@ietf.org>
List-Help: <mailto:dhcwg-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1325835542=="
Errors-To: dhcwg-bounces@ietf.org

On Thu, Mar 01, 2007 at 05:57:51PM -0700, Ted Lemon wrote:
> No, we didn't agree on that.

Pity.  You seemed to agree that there's no reason for a client
to present multiple keys, since it's only going to authenticate
itself one given way in any given exchange.

So there really shouldn't be a reason to artifically introduce a
client->key disambiguation problem that would no doubt cost money
to solve.

> You assert that the key is unique,

Boy I hope so!

If someone else has an identical binary public key, and can produce
a matching signature on a DHCP packet, then you've lost, no matter
how you found the key, or what kinds of disambiguation craziness
you put inbetween the process.

> Unfortunately, these mechanisms require  
> the intervention of an intelligent agent (a person) and can't really  
> be automated in the way you're suggesting.

You seem to think from an identity, you can determine the correct key.

This is not true without human intervention in any of the examples
you've cited.  You've got it backwards.

key->identity, in some kinds of keys, is a given (or is a cached
state in others).  You can check the identity contained within the
key against what you expected, and then verify the key against your
trust anchor.  You've just proved the identity which the trust anchor
has signed.

identity->key is hard, and ultimately requires human intervention
to do properly.  The biggest problem is that many keys might be
introduced (a number you can't control), and the only way to verify
any of them is through expensive cryptography.

Not to mention that many DHCP clients (and servers) have no idea
what their "identity" is when they boot the first time, and the
methods they do have are prone to user-produced collisions.


The "SSH model" is the right one for most DHCP environments.  It has
the exact same bootstrap (from fresh software install) problem DHCP
does ('hostname' is probably "default.example.com"...hints from
hardware are probably ambiguous...), and in my opinion the best key
distribution model for the DHCP problem.  It does need some tweaking.

But the basic similarity is that the key "is" the identity, and any
external identities you can apply to it are a function of how you
come by (such as key->lease->hostname) and then cache the key, not
a property of the key itself.

Putting the key in an additional space in the packet rather than the
DUID just wastes space to no positive results, since what you're
really validating before processing the message is the key (and its
signature of the packet), and not the DUID.  Briefly, the DUID's
function in "lease ownership" is replaced through cryptography.


The one thing you said that's absolutely true (although in the casual
case statistically highly unlikely) is that fingerprints might need
disambiguation by looking at the binary public key contents comparing
two identical fingerprints.  In the attack case, that absolutely
needs human intervention to work (and usually it doesn't).

But in such a case, it requires;

A) Foreknowledge - knowing the fingerprint someone will use before
   they use it, and manufacturing a key whose fingerprint matches.
   Getting your (probably different) binary public key into the
   DHCP endpoint's cache before the subverted system can.

   Manufacturing such a key is difficult enough.

B) Some way to fault the DHCP endpoint's cache without operator
   intervention, so that it will take on your newly manufactured
   binary-different-public-key with matching fingerprint.

   Again, just manufacturing the key is difficult enough.

In short, these are both non-issues.

-- 
David W. Hankins	"If you don't do it right the first time,
Software Engineer		you'll just have to do it again."
Internet Systems Consortium, Inc.	-- Jack T. Hankins
_______________________________________________
dhcwg mailing list
dhcwg@ietf.org
https://www1.ietf.org/mailman/listinfo/dhcwg