This file is indexed.

/usr/share/doc/libghc-nettle-doc/html/Crypto-Nettle-CCM.html is in libghc-nettle-doc 0.1.1-3build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Crypto.Nettle.CCM</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Crypto-Nettle-CCM.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Crypto-Nettle-CCM.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">nettle-0.1.1: safe nettle binding</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(c) 2013 Stefan B&#252;hler</td></tr><tr><th>License</th><td>MIT-style (see the file COPYING)</td></tr><tr><th>Maintainer</th><td>stbuehler@web.de</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Portability</th><td>portable</td></tr><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Crypto.Nettle.CCM</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>(This is not a binding to nettle; it is implemented in pure haskell)</p><p>This module adds CCM support to all 128-bit block ciphers:</p><pre>aeadInit AEAD_CCM = ccmInitTLS</pre><p>CCM uses 2 parameters t and q: t is the tag length (2,4,6,8,10,12,14,16) and q (2..8) is the
 length in bytes that the length of the message is stored in (and the length of the
 counter variable).
 Maximum message length is <code>2^(8*q) - 1</code>.</p><p>CCM requires a nonce of length (15 - q). TLS uses CCM with <code>t = 16</code> and <code>q = 3</code>,
 and a nonce length of 12 (the first 4 bytes are fixed from the handshake, the other 8
 usually represent the sequence counter).</p><p>CCM encrypts with a CTR mode, the start IV is based on the (t,q,nonce) parameters;
 the tag is encrypted with counter value = 0, then the message follows.</p><p>Calculating the tag needs the message length first - so this implementation needs
 to gather all data before calculating it.</p><p>In RFC 3610 <code>t</code> is called <code>M</code>, and <code>q</code> is called <code>L</code>.</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:ccmInit">ccmInit</a> :: (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:BlockCipher">BlockCipher</a> cipher, <a href="file:///usr/share/doc/libghc-byteable-doc/html/Data-Byteable.html#t:Byteable">Byteable</a> iv) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a> -&gt; cipher -&gt; iv -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:AEAD">AEAD</a> cipher)</li><li class="src short"><a href="#v:ccmInitTLS">ccmInitTLS</a> :: (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:BlockCipher">BlockCipher</a> cipher, <a href="file:///usr/share/doc/libghc-byteable-doc/html/Data-Byteable.html#t:Byteable">Byteable</a> iv) =&gt; cipher -&gt; iv -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:AEAD">AEAD</a> cipher)</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:ccmInit" class="def">ccmInit</a> <a href="src/Crypto-Nettle-CCM.html#ccmInit" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:BlockCipher">BlockCipher</a> cipher, <a href="file:///usr/share/doc/libghc-byteable-doc/html/Data-Byteable.html#t:Byteable">Byteable</a> iv)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">=&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></td><td class="doc"><p>tag length <code>t</code></p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Int.html#t:Int">Int</a></td><td class="doc"><p>length <code>q</code> of the message length field</p></td></tr><tr><td class="src">-&gt; cipher</td><td class="doc"><p>cipher initialized with key</p></td></tr><tr><td class="src">-&gt; iv</td><td class="doc"><p><code>nonce</code> with length <code>15-q</code></p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:AEAD">AEAD</a> cipher)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Start a CCM encryption with specified tag length <code>t</code>, length <code>q</code> of the message length field and a <code>15-q</code> bytes long <code>nonce</code>.
Fails if any parameter is invalid or the block cipher doesn't use a 16-byte <code><a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#v:blockSize">blockSize</a></code>.</p></div></div><div class="top"><p class="src"><a name="v:ccmInitTLS" class="def">ccmInitTLS</a> <a href="src/Crypto-Nettle-CCM.html#ccmInitTLS" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:BlockCipher">BlockCipher</a> cipher, <a href="file:///usr/share/doc/libghc-byteable-doc/html/Data-Byteable.html#t:Byteable">Byteable</a> iv)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">=&gt; cipher</td><td class="doc"><p>cipher initialized with key</p></td></tr><tr><td class="src">-&gt; iv</td><td class="doc"><p>8 byte <code>nonce</code></p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#t:AEAD">AEAD</a> cipher)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Start a CCM encryption with specified tag length <code>t = 16</code>, length <code>q = 3</code> for the message length field and a <code>8</code> bytes long <code>nonce</code>.
Fails if any parameter is invalid or the block cipher doesn't use a 16-byte <code><a href="file:///usr/share/doc/libghc-crypto-cipher-types-doc/html/Crypto-Cipher-Types.html#v:blockSize">blockSize</a></code>.
This are the parameters used for TLS.</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>