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