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