man.isc-hmac-fixup.html revision 150d28abc8fc6f8a3df17650c61ce1635aeb192c
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews<!--
ddccd5811feff696ba460dabfb666ce61040f545Andreas Gustafsson - Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC")
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - Copyright (C) 2000-2003 Internet Software Consortium.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein -
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - Permission to use, copy, modify, and/or distribute this software for any
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - purpose with or without fee is hereby granted, provided that the above
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User - copyright notice and this permission notice appear in all copies.
ddccd5811feff696ba460dabfb666ce61040f545Andreas Gustafsson -
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - 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,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - PERFORMANCE OF THIS SOFTWARE.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User-->
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<!-- $Id: man.isc-hmac-fixup.html,v 1.70 2012/02/01 01:04:18 tbox Exp $ -->
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<html>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<head>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<title>isc-hmac-fixup</title>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<link rel="up" href="Bv9ARM.ch10.html" title="Manual pages">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<link rel="prev" href="man.genrandom.html" title="genrandom">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<link rel="next" href="man.nsec3hash.html" title="nsec3hash">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</head>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<div class="navheader">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<table width="100%" summary="Navigation header">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<tr><th colspan="3" align="center"><span class="application">isc-hmac-fixup</span></th></tr>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<tr>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<td width="20%" align="left">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<a accesskey="p" href="man.genrandom.html">Prev</a>�</td>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<th width="60%" align="center">Manual pages</th>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<td width="20%" align="right">�<a accesskey="n" href="man.nsec3hash.html">Next</a>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</td>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</tr>
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User</table>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<hr>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refentry" lang="en">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<a name="man.isc-hmac-fixup"></a><div class="titlepage"></div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refnamediv">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<h2>Name</h2>
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User<p><span class="application">isc-hmac-fixup</span> &#8212; fixes HMAC keys generated by older versions of BIND</p>
a24330c4805a224191ab687d0291963062fe3355Tinderbox User</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refsynopsisdiv">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<h2>Synopsis</h2>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<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</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refsect1" lang="en">
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<a name="id2618216"></a><h2>DESCRIPTION</h2>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<p>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User Versions of BIND 9 up to and including BIND 9.6 had a bug causing
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User HMAC-SHA* TSIG keys which were longer than the digest length of the
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User hash algorithm (i.e., SHA1 keys longer than 160 bits, SHA256 keys
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User 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 </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<p>
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 </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<p>
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 </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refsect1" lang="en">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<a name="id2653538"></a><h2>SECURITY CONSIDERATIONS</h2>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<p>
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
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User 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
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein strength."
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refsect1" lang="en">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<a name="id2653554"></a><h2>SEE ALSO</h2>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<p>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User <em class="citetitle">BIND 9 Administrator Reference Manual</em>,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein <em class="citetitle">RFC 2104</em>.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="refsect1" lang="en">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<a name="id2653571"></a><h2>AUTHOR</h2>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<p><span class="corpauthor">Internet Systems Consortium</span>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User </p>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<div class="navfooter">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<hr>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<table width="100%" summary="Navigation footer">
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User<tr>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<td width="40%" align="left">
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>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<td width="40%" align="right">�<a accesskey="n" href="man.nsec3hash.html">Next</a>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</td>
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User</tr>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<tr>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User<td width="40%" align="left" valign="top">
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein<span class="application">genrandom</span>�</td>
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>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</td>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</tr>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</table>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</div>
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein</body>
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User</html>
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User