Re: [babel] Proposed appendix to Babel-HMAC
Dave Taht <dave.taht@gmail.com> Mon, 21 January 2019 21:47 UTC
Return-Path: <dave.taht@gmail.com>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 81901129BBF for <babel@ietfa.amsl.com>; Mon, 21 Jan 2019 13:47:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 Ci_qOy7fqUit for <babel@ietfa.amsl.com>; Mon, 21 Jan 2019 13:47:27 -0800 (PST)
Received: from mail-qt1-x842.google.com (mail-qt1-x842.google.com [IPv6:2607:f8b0:4864:20::842]) (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 35524129B88 for <babel@ietf.org>; Mon, 21 Jan 2019 13:47:27 -0800 (PST)
Received: by mail-qt1-x842.google.com with SMTP id t13so25260925qtn.3 for <babel@ietf.org>; Mon, 21 Jan 2019 13:47:27 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=lN0CzcOJwMN716WmG6MHt3l0WfCVu8e93LKvEWv4E/o=; b=MX3L9YOoiu8anyco7fl7C+qA7SxGsSZSaRML56zSowEWtWcnGTazFNl4h1j/ekkKVt TDws0H1+7a8s7nvScuo4xKc/OIl/ojcRehe6FunDiWDJ1DfOWRmjpGibeY1wEs0Mjfjg aXVBP7pVHAfLCnq0c7nscGlQMdRpCIXk3UhQ7TBOLqi+CeLKW+zUOONNZjr6gp+iy4U0 QLWjZ9dTNEndfx5xpiAWVQ//B2ZRWKjDcd8gekC83PM2B716jtP0QQYqQ5M4ysVfymJj ri/+fWc5l+tEa3hAMrI1vv4ouy5RRgwR3ds4O2YqfvYQiYWDG2tMNMycGNuEDcCAtijo ouog==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=lN0CzcOJwMN716WmG6MHt3l0WfCVu8e93LKvEWv4E/o=; b=lloECleXIkgXNfgTmKUaCiuhvBWYwwonK7RapgCMNXOR+J2uJuapTmHpAco08xeMoq CrRV+BIKrrU/QAzjphA29Za9a2yFxQAosIOw4gRUl20vcPXvtgiVm8afd9kiPcoWAZQY 5XHptK0DVRPjTkaYj0h8+kO00fqaHbBnwqZ3fauisvAPEAR7c0Dg67F0JiSgNMykGF/n 2e76pifpG2ZWQgYBtHAIKz0ozuJOtdEVD68xcfipoXmyOJI/N1aKJ3uOWfpyLQegHvo9 Pzu+HMtQm2qxNomfd2sevkLjuhYrLXsv+Dy4oFsignr1So7+mArplJUyXOUpzBZyHkEs FPeA==
X-Gm-Message-State: AJcUukfv8nPBzEyr06Idp6UJ8kqJFxxjxYYIdjkzbhG3DqYnLmIArElA MKuw0qzvOtSyyrfJ5DT69Pv+lANh1jSMeta1YW/7Ow==
X-Google-Smtp-Source: ALg8bN7VTQEPZkcYLCHNzcSM8OWy+xEhgIoJ+hypl93hZE1EXN7OXz28/FTQlFkIfBVdkQmTvkhDk4yd8/hCTAzM6p8=
X-Received: by 2002:a0c:8a5a:: with SMTP id 26mr26875375qvu.94.1548107246020; Mon, 21 Jan 2019 13:47:26 -0800 (PST)
MIME-Version: 1.0
References: <87h8e9bgv3.wl-jch@irif.fr> <877ef0pwlu.fsf@taht.net> <2D09D61DDFA73D4C884805CC7865E6114DFA4C1E@GAALPA1MSGUSRBF.ITServices.sbc.com>
In-Reply-To: <2D09D61DDFA73D4C884805CC7865E6114DFA4C1E@GAALPA1MSGUSRBF.ITServices.sbc.com>
From: Dave Taht <dave.taht@gmail.com>
Date: Mon, 21 Jan 2019 13:46:46 -0800
Message-ID: <CAA93jw7YV45WE3m3bA62cuAo6Y07XYj9YMmON5FthKPG_tKgSA@mail.gmail.com>
To: "STARK, BARBARA H" <bs7652@att.com>
Cc: Dave Taht <dave@taht.net>, Juliusz Chroboczek <jch@irif.fr>, "babel@ietf.org" <babel@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/5uK-W3L6QpkKf_eC4lu-2q2v6Xo>
Subject: Re: [babel] Proposed appendix to Babel-HMAC
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Jan 2019 21:47:31 -0000
On Mon, Jan 21, 2019 at 1:40 PM STARK, BARBARA H <bs7652@att.com> wrote: > > Hi Dave, > I'm not sure this proposed appendix is still being considered? In mine and Juliusz' last exchange re the babel-hmac draft, I said I would be satisfied with an easy-to-fine (i.e., in the Table of Contents) definition for the term "HMAC Key" in the draft. Which we agreed was > ## The HMAC Key > The HMAC key is a string of bytes the length of which is exactly the > block size of the HMAC algorithm being used. Note this is different > from the [RFC2104] definition. > > This doesn't specify base64 or hex format. > > But in the information model, I proposed the parameter be binary datatype (noting that I would be using a hexBinary datatype with the TR-181 data model). No-one disagreed with me, so I declared the decision made. > > If we think there is value in an appendix on configuration of the HMAC key, I'm fine with that. But I sense an anxiousness to proceed with declaring WGLC triumphant and sending babel-hmac on to IESG. Alternately, I could see such an appendix potentially belonging in the information-model -- where it wouldn't clutter up hmac-babel, and where we could also discuss (more generically) distribution of credentials. I can live with this approach. If the appendix is considered necessary anywhere I would substitute "human minions" for "human slaves" as being more PC. > Barbara > > > -----Original Message----- > > From: Dave Taht > > > > Juliusz Chroboczek <jch@irif.fr> writes: > > > > > Key representation > > > ================== > > > > > > The protocol described in this document assumes the presence of one or > > > more keys in entries of the interface table (Section 3.1) that have > > > been securely provisioned by means outside of the protocol. In this > > > appendix, we describe how this provisioning might happen. > > > > > > Static configuration file > > > ------------------------- > > > > > > In the simplest case, the keys are taken from a static configuration file. > > > When that is the case, the keys should either be drawn randomly using > > > a good source of entropy, or generated from a user-provided passphrase > > > using a good Key Derivation Function (KDF). > > > > > > In either case, the keys should be distributed to all routers using a > > > some secure channel (e.g., ssh login or human slaves carrying USB > > flashkeys). > > > > human slavery is usually not in the domain of the ietf, and is usually only in > > the domain of corporations and oppressive governments. > > > > yes, I laughed, but there is a huge movement to rid the language of the > > master/slave analogy across all of tech. > > > > > The user-provided passphrase, if any, should not be distributed to the > > > routers, but rather kept on a secure central host where key generation > > > happens. > > > > > > In the interest of interoperability, it is recommended that all Babel > > > implementations support a configuration syntax where the key is > > > expressed as a string of hexadecimal digits (both uppercase or > > > lowercase should be > > > accepted) of exactly the right size to yield an HMAC key (e.g., 64 > > > hexadecimal digits for a SHA-256 key). It is recommended that keys of > > > the wrong size should be rejected rather than extended or hashed. > > > > I figure I've lost on the BASE64 idea. Still I felt 0xthekey for hex was a good > > idea rather than just thekey > > > > > Static provisioning through a management protocol > > > ------------------------------------------------- > > > > > > In a slightly more advanced implementation, HMAC keys are provisioned > > > using a management protocol, either a standard XML over HTTP horror > > > [NETCONF, TR-69], or an elegant ad-hoc protocol. In that case, the > > > keys should be expressed in whatever format the management protocol > > > uses for representing raw binary data, and keys should be rejected > > > unless they have exactly the right size for a given HMAC algorithm > > > (e.g., 32 octets for a SHA-256 key). If the management protocol has > > > no usual syntax for binary blobs, hexadecimal is recommended. > > > > > > Key distribution protocol > > > ------------------------- > > > > > > The recommended approach is to use a centralised key distribution > > > server that periodically generates a new key. In that approach, the > > > central server generates a new key every 20 minutes or so and installs > > > it on all the secure interfaces of all the routers in a given routing > > > domain; after all routers have been updated, the central server > > > performs a second pass to remove the now-obsolete keys. The > > > on-the-wire protocol involved could be something as simple as > > > connecting over ssh to every router and editing the relevan > > > configuration files, something as complex as a an XML over > > > > spelling:relevant. > > > > > HTTP monster, or something as elegant as a secure hop-to-hop flooding > > > algorithm. > > > > It is obvious that some frustration and perhaps, vodka, were leaking through > > this proposed appendix. > > > > ", something as complex as XML over HTTP, or a secure hop-to-hop" > > > > > It is important that the key distribution algorithm should be able to > > > recover from failed key installation, which may happen if a router was > > > not reachable at the time a new key was being installed. In the case > > > of a protocol that uses global unicast, this can be ensured either by > > > using a separate management network, or by designing the network so > > > that there is a connected backbone that is not secured by HMAC. The > > > elegant solution to the problem is to use a key distribution protocol > > > that only relies on link-local IPv6 communication. > > > > Feel free to reference hnet here... > > > > > > > > _______________________________________________ > > > babel mailing list > > > babel@ietf.org > > > https://urldefense.proofpoint.com/v2/url?u=https- > > 3A__www.ietf.org_mail > > > man_listinfo_babel&d=DwICAg&c=LFYZ-o9_HUMeMTSQicvjIg&r=LoGzhC- > > 8sc8SY8T > > > > > q4vrfog&m=rVTf2a9q1YuL5raIl0tB7LvZBM3KmepN__mx0Jhtx88&s=uSNNUw > > MZqU_Co5 > > > Dltj5FVWGdMLHE4m1R1Jc9CfFlha0&e= > > > > _______________________________________________ > > babel mailing list > > babel@ietf.org > > https://urldefense.proofpoint.com/v2/url?u=https- > > 3A__www.ietf.org_mailman_listinfo_babel&d=DwICAg&c=LFYZ- > > o9_HUMeMTSQicvjIg&r=LoGzhC- > > 8sc8SY8Tq4vrfog&m=rVTf2a9q1YuL5raIl0tB7LvZBM3KmepN__mx0Jhtx88&s= > > uSNNUwMZqU_Co5Dltj5FVWGdMLHE4m1R1Jc9CfFlha0&e= > > _______________________________________________ > babel mailing list > babel@ietf.org > https://www.ietf.org/mailman/listinfo/babel -- Dave Täht CTO, TekLibre, LLC http://www.teklibre.com Tel: 1-831-205-9740
- [babel] Proposed appendix to Babel-HMAC Juliusz Chroboczek
- Re: [babel] Proposed appendix to Babel-HMAC Dave Taht
- Re: [babel] Proposed appendix to Babel-HMAC STARK, BARBARA H
- Re: [babel] Proposed appendix to Babel-HMAC Dave Taht
- Re: [babel] Proposed appendix to Babel-HMAC Juliusz Chroboczek