1
0
mirror of https://github.com/taigrr/arduinolibs synced 2025-01-18 04:33:12 -08:00

Update docs

This commit is contained in:
Rhys Weatherley
2015-04-01 16:36:21 +10:00
parent 100a18a956
commit 95a162cdfd
377 changed files with 6799 additions and 801 deletions

View File

@@ -115,55 +115,62 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;Cipher.h&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classChaCha.html"> 28</a></span>&#160;<span class="keyword">class </span><a class="code" href="classChaCha.html">ChaCha</a> : <span class="keyword">public</span> <a class="code" href="classCipher.html">Cipher</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classChaCha.html#a5831811b705d3c80e97f0242597f0c7e">ChaCha</a>(uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a> = 20);</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classChaCha.html">ChaCha</a>();</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7">keySize</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classChaCha.html#afaa3df343a7d07976bd7e03a0c1bf43c">ivSize</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classChaCha.html#a0a73d3623da377bc593876156768dd72"> 37</a></span>&#160; uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rounds; }</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541"> 38</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541">setNumRounds</a>(uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>) { rounds = <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>; }</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90">setKey</a>(<span class="keyword">const</span> uint8_t *key, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#a734f3246b1e6810c63637b8cda26b259">setIV</a>(<span class="keyword">const</span> uint8_t *iv, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#acab9109b7189ea88d9e5417a3a209eac">setCounter</a>(<span class="keyword">const</span> uint8_t *counter, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#acd4fff140b8871c233d9a31abf753ed8">encrypt</a>(uint8_t *output, <span class="keyword">const</span> uint8_t *input, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a1f54b2b51b59428010f81a6c4dc4e42c">decrypt</a>(uint8_t *output, <span class="keyword">const</span> uint8_t *input, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#af533905f679066c41f4d6cd76bddb4cb">clear</a>();</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">class </span><a class="code" href="classChaChaPoly.html">ChaChaPoly</a>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classChaCha.html"> 30</a></span>&#160;<span class="keyword">class </span><a class="code" href="classChaCha.html">ChaCha</a> : <span class="keyword">public</span> <a class="code" href="classCipher.html">Cipher</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classChaCha.html#a5831811b705d3c80e97f0242597f0c7e">ChaCha</a>(uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a> = 20);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classChaCha.html">ChaCha</a>();</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7">keySize</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classChaCha.html#afaa3df343a7d07976bd7e03a0c1bf43c">ivSize</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classChaCha.html#a0a73d3623da377bc593876156768dd72"> 39</a></span>&#160; uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rounds; }</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541"> 40</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541">setNumRounds</a>(uint8_t <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>) { rounds = <a class="code" href="classChaCha.html#a0a73d3623da377bc593876156768dd72">numRounds</a>; }</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90">setKey</a>(<span class="keyword">const</span> uint8_t *key, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#a734f3246b1e6810c63637b8cda26b259">setIV</a>(<span class="keyword">const</span> uint8_t *iv, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classChaCha.html#acab9109b7189ea88d9e5417a3a209eac">setCounter</a>(<span class="keyword">const</span> uint8_t *counter, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#acd4fff140b8871c233d9a31abf753ed8">encrypt</a>(uint8_t *output, <span class="keyword">const</span> uint8_t *input, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a1f54b2b51b59428010f81a6c4dc4e42c">decrypt</a>(uint8_t *output, <span class="keyword">const</span> uint8_t *input, <span class="keywordtype">size_t</span> len);</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a41ac3262e52ff49dcd916d0b3b2e2038">hashCore</a>(uint32_t *output, <span class="keyword">const</span> uint32_t *input, uint8_t rounds);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#af533905f679066c41f4d6cd76bddb4cb">clear</a>();</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; uint8_t block[64];</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; uint8_t stream[64];</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; uint8_t rounds;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; uint8_t posn;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;};</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classChaCha.html#a41ac3262e52ff49dcd916d0b3b2e2038">hashCore</a>(uint32_t *output, <span class="keyword">const</span> uint32_t *input, uint8_t rounds);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; uint8_t block[64];</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; uint8_t stream[64];</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; uint8_t rounds;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; uint8_t posn;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">void</span> keystreamBlock(uint32_t *output);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classChaChaPoly.html">ChaChaPoly</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;};</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="classCipher_html"><div class="ttname"><a href="classCipher.html">Cipher</a></div><div class="ttdoc">Abstract base class for stream ciphers. </div><div class="ttdef"><b>Definition:</b> <a href="Cipher_8h_source.html#l00029">Cipher.h:29</a></div></div>
<div class="ttc" id="classChaCha_html_afaa3df343a7d07976bd7e03a0c1bf43c"><div class="ttname"><a href="classChaCha.html#afaa3df343a7d07976bd7e03a0c1bf43c">ChaCha::ivSize</a></div><div class="ttdeci">size_t ivSize() const </div><div class="ttdoc">Size of the initialization vector for this cipher, in bytes. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00065">ChaCha.cpp:65</a></div></div>
<div class="ttc" id="classChaChaPoly_html"><div class="ttname"><a href="classChaChaPoly.html">ChaChaPoly</a></div><div class="ttdoc">Authenticated cipher based on ChaCha and Poly1305. </div><div class="ttdef"><b>Definition:</b> <a href="ChaChaPoly_8h_source.html#l00030">ChaChaPoly.h:30</a></div></div>
<div class="ttc" id="classChaCha_html_a6b2bdffbd3705e388bb458edb2f40c90"><div class="ttname"><a href="classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90">ChaCha::setKey</a></div><div class="ttdeci">bool setKey(const uint8_t *key, size_t len)</div><div class="ttdoc">Sets the key to use for future encryption and decryption operations. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00087">ChaCha.cpp:87</a></div></div>
<div class="ttc" id="classChaCha_html"><div class="ttname"><a href="classChaCha.html">ChaCha</a></div><div class="ttdoc">ChaCha stream cipher. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00028">ChaCha.h:28</a></div></div>
<div class="ttc" id="classChaCha_html"><div class="ttname"><a href="classChaCha.html">ChaCha</a></div><div class="ttdoc">ChaCha stream cipher. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00030">ChaCha.h:30</a></div></div>
<div class="ttc" id="classChaCha_html_af286083291fab2bd36dc7ad1f54d5cd7"><div class="ttname"><a href="classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7">ChaCha::keySize</a></div><div class="ttdeci">size_t keySize() const </div><div class="ttdoc">Default size of the key for this cipher, in bytes. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00059">ChaCha.cpp:59</a></div></div>
<div class="ttc" id="classChaCha_html_a734f3246b1e6810c63637b8cda26b259"><div class="ttname"><a href="classChaCha.html#a734f3246b1e6810c63637b8cda26b259">ChaCha::setIV</a></div><div class="ttdeci">bool setIV(const uint8_t *iv, size_t len)</div><div class="ttdoc">Sets the initialization vector to use for future encryption and decryption operations. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00111">ChaCha.cpp:111</a></div></div>
<div class="ttc" id="classChaCha_html_acab9109b7189ea88d9e5417a3a209eac"><div class="ttname"><a href="classChaCha.html#acab9109b7189ea88d9e5417a3a209eac">ChaCha::setCounter</a></div><div class="ttdeci">bool setCounter(const uint8_t *counter, size_t len)</div><div class="ttdoc">Sets the starting counter for encryption. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00145">ChaCha.cpp:145</a></div></div>
<div class="ttc" id="classChaCha_html_a5831811b705d3c80e97f0242597f0c7e"><div class="ttname"><a href="classChaCha.html#a5831811b705d3c80e97f0242597f0c7e">ChaCha::ChaCha</a></div><div class="ttdeci">ChaCha(uint8_t numRounds=20)</div><div class="ttdoc">Constructs a new ChaCha stream cipher. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00047">ChaCha.cpp:47</a></div></div>
<div class="ttc" id="classChaCha_html_a1f54b2b51b59428010f81a6c4dc4e42c"><div class="ttname"><a href="classChaCha.html#a1f54b2b51b59428010f81a6c4dc4e42c">ChaCha::decrypt</a></div><div class="ttdeci">void decrypt(uint8_t *output, const uint8_t *input, size_t len)</div><div class="ttdoc">Decrypts an input buffer and writes the plaintext to an output buffer. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00190">ChaCha.cpp:190</a></div></div>
<div class="ttc" id="classChaCha_html_acd4fff140b8871c233d9a31abf753ed8"><div class="ttname"><a href="classChaCha.html#acd4fff140b8871c233d9a31abf753ed8">ChaCha::encrypt</a></div><div class="ttdeci">void encrypt(uint8_t *output, const uint8_t *input, size_t len)</div><div class="ttdoc">Encrypts an input buffer and writes the ciphertext to an output buffer. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00158">ChaCha.cpp:158</a></div></div>
<div class="ttc" id="classChaCha_html_af533905f679066c41f4d6cd76bddb4cb"><div class="ttname"><a href="classChaCha.html#af533905f679066c41f4d6cd76bddb4cb">ChaCha::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Clears all security-sensitive state from this cipher. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00195">ChaCha.cpp:195</a></div></div>
<div class="ttc" id="classChaCha_html_a0a73d3623da377bc593876156768dd72"><div class="ttname"><a href="classChaCha.html#a0a73d3623da377bc593876156768dd72">ChaCha::numRounds</a></div><div class="ttdeci">uint8_t numRounds() const </div><div class="ttdoc">Returns the number of encryption rounds; usually 8, 12, or 20. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00037">ChaCha.h:37</a></div></div>
<div class="ttc" id="classChaCha_html_a1a0911e0be8f4590d7fb76884d98c541"><div class="ttname"><a href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541">ChaCha::setNumRounds</a></div><div class="ttdeci">void setNumRounds(uint8_t numRounds)</div><div class="ttdoc">Sets the number of encryption rounds. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00038">ChaCha.h:38</a></div></div>
<div class="ttc" id="classChaCha_html_a41ac3262e52ff49dcd916d0b3b2e2038"><div class="ttname"><a href="classChaCha.html#a41ac3262e52ff49dcd916d0b3b2e2038">ChaCha::hashCore</a></div><div class="ttdeci">static void hashCore(uint32_t *output, const uint32_t *input, uint8_t rounds)</div><div class="ttdoc">Executes the ChaCha hash core on an input memory block. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00230">ChaCha.cpp:230</a></div></div>
<div class="ttc" id="classChaCha_html_af533905f679066c41f4d6cd76bddb4cb"><div class="ttname"><a href="classChaCha.html#af533905f679066c41f4d6cd76bddb4cb">ChaCha::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Clears all security-sensitive state from this cipher. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00218">ChaCha.cpp:218</a></div></div>
<div class="ttc" id="classChaCha_html_a0a73d3623da377bc593876156768dd72"><div class="ttname"><a href="classChaCha.html#a0a73d3623da377bc593876156768dd72">ChaCha::numRounds</a></div><div class="ttdeci">uint8_t numRounds() const </div><div class="ttdoc">Returns the number of encryption rounds; usually 8, 12, or 20. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00039">ChaCha.h:39</a></div></div>
<div class="ttc" id="classChaCha_html_a1a0911e0be8f4590d7fb76884d98c541"><div class="ttname"><a href="classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541">ChaCha::setNumRounds</a></div><div class="ttdeci">void setNumRounds(uint8_t numRounds)</div><div class="ttdoc">Sets the number of encryption rounds. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8h_source.html#l00040">ChaCha.h:40</a></div></div>
<div class="ttc" id="classChaCha_html_a41ac3262e52ff49dcd916d0b3b2e2038"><div class="ttname"><a href="classChaCha.html#a41ac3262e52ff49dcd916d0b3b2e2038">ChaCha::hashCore</a></div><div class="ttdeci">static void hashCore(uint32_t *output, const uint32_t *input, uint8_t rounds)</div><div class="ttdoc">Executes the ChaCha hash core on an input memory block. </div><div class="ttdef"><b>Definition:</b> <a href="ChaCha_8cpp_source.html#l00253">ChaCha.cpp:253</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Mar 29 2015 08:30:13 for ArduinoLibs by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Wed Apr 1 2015 16:36:09 for ArduinoLibs by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>