man.isc-hmac-fixup.html revision b68a2d272b958eb2c40cce59ee33e71c5f5f521b
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - Copyright (C) 2004-2014 Internet Systems Consortium, Inc. ("ISC")
a7ff1335befc75bdbfc0addba7306dec7bb6202ccolm - Copyright (C) 2000-2003 Internet Software Consortium.
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - Permission to use, copy, modify, and/or distribute this software for any
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - purpose with or without fee is hereby granted, provided that the above
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - copyright notice and this permission notice appear in all copies.
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
92adf051614160febf3e95c5b51ffd0a0908f052wrowe - PERFORMANCE OF THIS SOFTWARE.
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<!-- $Id$ -->
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<link rel="up" href="Bv9ARM.ch10.html" title="Manual pages">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<link rel="prev" href="man.genrandom.html" title="genrandom">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<link rel="next" href="man.nsec3hash.html" title="nsec3hash">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<tr><th colspan="3" align="center"><span class="application">isc-hmac-fixup</span></th></tr>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<a accesskey="p" href="man.genrandom.html">Prev</a>�</td>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<td width="20%" align="right">�<a accesskey="n" href="man.nsec3hash.html">Next</a>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<a name="man.isc-hmac-fixup"></a><div class="titlepage"></div>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<p><span class="application">isc-hmac-fixup</span> — fixes HMAC keys generated by older versions of BIND</p>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<div class="cmdsynopsis"><p><code class="command">isc-hmac-fixup</code> {<em class="replaceable"><code>algorithm</code></em>} {<em class="replaceable"><code>secret</code></em>}</p></div>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe Versions of BIND 9 up to and including BIND 9.6 had a bug causing
92adf051614160febf3e95c5b51ffd0a0908f052wrowe HMAC-SHA* TSIG keys which were longer than the digest length of the
92adf051614160febf3e95c5b51ffd0a0908f052wrowe hash algorithm (i.e., SHA1 keys longer than 160 bits, SHA256 keys
92adf051614160febf3e95c5b51ffd0a0908f052wrowe longer than 256 bits, etc) to be used incorrectly, generating a
92adf051614160febf3e95c5b51ffd0a0908f052wrowe message authentication code that was incompatible with other DNS
92adf051614160febf3e95c5b51ffd0a0908f052wrowe implementations.
92adf051614160febf3e95c5b51ffd0a0908f052wrowe This bug has been fixed in BIND 9.7. However, the fix may
92adf051614160febf3e95c5b51ffd0a0908f052wrowe cause incompatibility between older and newer versions of
92adf051614160febf3e95c5b51ffd0a0908f052wrowe BIND, when using long keys. <span><strong class="command">isc-hmac-fixup</strong></span>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe modifies those keys to restore compatibility.
92adf051614160febf3e95c5b51ffd0a0908f052wrowe To modify a key, run <span><strong class="command">isc-hmac-fixup</strong></span> and
a7ff1335befc75bdbfc0addba7306dec7bb6202ccolm specify the key's algorithm and secret on the command line. If the
695cbdea48fde06a0da432a4e3a4a316d7751d0achrisd secret is longer than the digest length of the algorithm (64 bytes
a7ff1335befc75bdbfc0addba7306dec7bb6202ccolm for SHA1 through SHA256, or 128 bytes for SHA384 and SHA512), then a
92adf051614160febf3e95c5b51ffd0a0908f052wrowe new secret will be generated consisting of a hash digest of the old
a7ff1335befc75bdbfc0addba7306dec7bb6202ccolm secret. (If the secret did not require conversion, then it will be
92adf051614160febf3e95c5b51ffd0a0908f052wrowe printed without modification.)
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<a name="id2668796"></a><h2>SECURITY CONSIDERATIONS</h2>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe Secrets that have been converted by <span><strong class="command">isc-hmac-fixup</strong></span>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe are shortened, but as this is how the HMAC protocol works in
92adf051614160febf3e95c5b51ffd0a0908f052wrowe operation anyway, it does not affect security. RFC 2104 notes,
92adf051614160febf3e95c5b51ffd0a0908f052wrowe "Keys longer than [the digest length] are acceptable but the
92adf051614160febf3e95c5b51ffd0a0908f052wrowe extra length would not significantly increase the function
92adf051614160febf3e95c5b51ffd0a0908f052wrowe <em class="citetitle">BIND 9 Administrator Reference Manual</em>,
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<p><span class="corpauthor">Internet Systems Consortium</span>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<a accesskey="p" href="man.genrandom.html">Prev</a>�</td>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<td width="20%" align="center"><a accesskey="u" href="Bv9ARM.ch10.html">Up</a></td>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<td width="40%" align="right">�<a accesskey="n" href="man.nsec3hash.html">Next</a>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<td width="20%" align="center"><a accesskey="h" href="Bv9ARM.html">Home</a></td>
92adf051614160febf3e95c5b51ffd0a0908f052wrowe<td width="40%" align="right" valign="top">�<span class="application">nsec3hash</span>