<!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/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>BeeCrypt: blockCipher Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">BeeCrypt  <span id="projectnumber">4.2.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"> <div class="title">blockCipher Struct Reference<div class="ingroups"><a class="el" href="group__BC__m.html">Block ciphers</a></div></div> </div> </div><!--header--> <div class="contents"> <p>Holds information and pointers to code specific to each cipher. <a href="structblockCipher.html#details">More...</a></p> <p><code>#include <<a class="el" href="beecrypt_8h_source.html">beecrypt.h</a>></code></p> <div class="dynheader"> Collaboration diagram for blockCipher:</div> <div class="dyncontent"> <div class="center"><img src="structblockCipher__coll__graph.png" border="0" usemap="#blockCipher_coll__map" alt="Collaboration graph"/></div> <map name="blockCipher_coll__map" id="blockCipher_coll__map"> <area shape="rect" id="node2" href="structblockCipherRaw.html" title="blockCipherRaw" alt="" coords="5,5,123,32"/><area shape="rect" id="node3" href="structblockCipherMode.html" title="blockCipherMode" alt="" coords="148,5,271,32"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> Data Fields</h2></td></tr> <tr class="memitem:a6c9f539d9632b00c9b98228539254833"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a6c9f539d9632b00c9b98228539254833">name</a></td></tr> <tr class="memdesc:a6c9f539d9632b00c9b98228539254833"><td class="mdescLeft"> </td><td class="mdescRight">The blockcipher's name. <a href="#a6c9f539d9632b00c9b98228539254833">More...</a><br/></td></tr> <tr class="separator:a6c9f539d9632b00c9b98228539254833"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae9acc23b1b4742e15acf95c44675fe42"><td class="memItemLeft" align="right" valign="top">const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#ae9acc23b1b4742e15acf95c44675fe42">paramsize</a></td></tr> <tr class="memdesc:ae9acc23b1b4742e15acf95c44675fe42"><td class="mdescLeft"> </td><td class="mdescRight">The size of the parameters required by this cipher, in bytes. <a href="#ae9acc23b1b4742e15acf95c44675fe42">More...</a><br/></td></tr> <tr class="separator:ae9acc23b1b4742e15acf95c44675fe42"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8d6c03e6f997f3ad8e8a5e2b315ca805"><td class="memItemLeft" align="right" valign="top">const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a8d6c03e6f997f3ad8e8a5e2b315ca805">blocksize</a></td></tr> <tr class="memdesc:a8d6c03e6f997f3ad8e8a5e2b315ca805"><td class="mdescLeft"> </td><td class="mdescRight">The size of one block of data, in bytes. <a href="#a8d6c03e6f997f3ad8e8a5e2b315ca805">More...</a><br/></td></tr> <tr class="separator:a8d6c03e6f997f3ad8e8a5e2b315ca805"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3500d157e1433ee5cbf9e9dfbe7b10f1"><td class="memItemLeft" align="right" valign="top">const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a3500d157e1433ee5cbf9e9dfbe7b10f1">keybitsmin</a></td></tr> <tr class="memdesc:a3500d157e1433ee5cbf9e9dfbe7b10f1"><td class="mdescLeft"> </td><td class="mdescRight">The minimum number of key bits. <a href="#a3500d157e1433ee5cbf9e9dfbe7b10f1">More...</a><br/></td></tr> <tr class="separator:a3500d157e1433ee5cbf9e9dfbe7b10f1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad42cb478c58af64dd55ba34bea672aea"><td class="memItemLeft" align="right" valign="top">const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#ad42cb478c58af64dd55ba34bea672aea">keybitsmax</a></td></tr> <tr class="memdesc:ad42cb478c58af64dd55ba34bea672aea"><td class="mdescLeft"> </td><td class="mdescRight">The maximum number of key bits. <a href="#ad42cb478c58af64dd55ba34bea672aea">More...</a><br/></td></tr> <tr class="separator:ad42cb478c58af64dd55ba34bea672aea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad4251f30dce3bb56c6d6d4af5effce21"><td class="memItemLeft" align="right" valign="top">const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#ad4251f30dce3bb56c6d6d4af5effce21">keybitsinc</a></td></tr> <tr class="memdesc:ad4251f30dce3bb56c6d6d4af5effce21"><td class="mdescLeft"> </td><td class="mdescRight">The allowed increment in key bits between min and max. <a href="#ad4251f30dce3bb56c6d6d4af5effce21">More...</a><br/></td></tr> <tr class="separator:ad4251f30dce3bb56c6d6d4af5effce21"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a103ff53ae70c8b181770b5605d23ab80"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__BC__m.html#ga4bb0a804ab2c38ac56120f1cd35600b3">blockCipherSetup</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a103ff53ae70c8b181770b5605d23ab80">setup</a></td></tr> <tr class="memdesc:a103ff53ae70c8b181770b5605d23ab80"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the cipher's setup function. <a href="#a103ff53ae70c8b181770b5605d23ab80">More...</a><br/></td></tr> <tr class="separator:a103ff53ae70c8b181770b5605d23ab80"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aada7de9cfffbc798465d99a63b4981c6"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__BC__m.html#ga40aeffa20f977393fbf10378ef466c25">blockCipherSetIV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#aada7de9cfffbc798465d99a63b4981c6">setiv</a></td></tr> <tr class="memdesc:aada7de9cfffbc798465d99a63b4981c6"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the cipher's initialization vector setup function. <a href="#aada7de9cfffbc798465d99a63b4981c6">More...</a><br/></td></tr> <tr class="separator:aada7de9cfffbc798465d99a63b4981c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aedabefbac9018470145c344b463669de"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__BC__m.html#gae6164c8a42013a0b3aadba1bccd416af">blockCipherSetCTR</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#aedabefbac9018470145c344b463669de">setctr</a></td></tr> <tr class="memdesc:aedabefbac9018470145c344b463669de"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the cipher's ctr setup function. <a href="#aedabefbac9018470145c344b463669de">More...</a><br/></td></tr> <tr class="separator:aedabefbac9018470145c344b463669de"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acd180c9ad40ef38241a66607ecdb19c7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="beecrypt_8h.html#a94e1fe0182e49b4fb388d08c93fc1a2c">blockCipherFeedback</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#acd180c9ad40ef38241a66607ecdb19c7">getfb</a></td></tr> <tr class="memdesc:acd180c9ad40ef38241a66607ecdb19c7"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the cipher's feedback-returning function. <a href="#acd180c9ad40ef38241a66607ecdb19c7">More...</a><br/></td></tr> <tr class="separator:acd180c9ad40ef38241a66607ecdb19c7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a66034965bc9ae136e6dc224c10b84e71"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structblockCipherRaw.html">blockCipherRaw</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a66034965bc9ae136e6dc224c10b84e71">raw</a></td></tr> <tr class="memdesc:a66034965bc9ae136e6dc224c10b84e71"><td class="mdescLeft"> </td><td class="mdescRight">The cipher's raw functions. <a href="#a66034965bc9ae136e6dc224c10b84e71">More...</a><br/></td></tr> <tr class="separator:a66034965bc9ae136e6dc224c10b84e71"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac1f9c47f7b594006a4d66955dc81bfd9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structblockCipherMode.html">blockCipherMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#ac1f9c47f7b594006a4d66955dc81bfd9">ecb</a></td></tr> <tr class="memdesc:ac1f9c47f7b594006a4d66955dc81bfd9"><td class="mdescLeft"> </td><td class="mdescRight">The cipher's ECB functions. <a href="#ac1f9c47f7b594006a4d66955dc81bfd9">More...</a><br/></td></tr> <tr class="separator:ac1f9c47f7b594006a4d66955dc81bfd9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6fdc2e832bdc281af527640ddb2cb639"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structblockCipherMode.html">blockCipherMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a6fdc2e832bdc281af527640ddb2cb639">cbc</a></td></tr> <tr class="memdesc:a6fdc2e832bdc281af527640ddb2cb639"><td class="mdescLeft"> </td><td class="mdescRight">The cipher's CBC functions. <a href="#a6fdc2e832bdc281af527640ddb2cb639">More...</a><br/></td></tr> <tr class="separator:a6fdc2e832bdc281af527640ddb2cb639"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a26c65493883b6ae3437d31c5ce433245"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structblockCipherMode.html">blockCipherMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structblockCipher.html#a26c65493883b6ae3437d31c5ce433245">ctr</a></td></tr> <tr class="memdesc:a26c65493883b6ae3437d31c5ce433245"><td class="mdescLeft"> </td><td class="mdescRight">The cipher's CTR functions. <a href="#a26c65493883b6ae3437d31c5ce433245">More...</a><br/></td></tr> <tr class="separator:a26c65493883b6ae3437d31c5ce433245"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Holds information and pointers to code specific to each cipher. </p> <p>Specific block ciphers <em>may</em> be written to be multithread-safe. </p> </div><h2 class="groupheader">Field Documentation</h2> <a class="anchor" id="a8d6c03e6f997f3ad8e8a5e2b315ca805"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::blocksize</td> </tr> </table> </div><div class="memdoc"> <p>The size of one block of data, in bytes. </p> </div> </div> <a class="anchor" id="a6fdc2e832bdc281af527640ddb2cb639"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::cbc</td> </tr> </table> </div><div class="memdoc"> <p>The cipher's CBC functions. </p> </div> </div> <a class="anchor" id="a26c65493883b6ae3437d31c5ce433245"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::ctr</td> </tr> </table> </div><div class="memdoc"> <p>The cipher's CTR functions. </p> </div> </div> <a class="anchor" id="ac1f9c47f7b594006a4d66955dc81bfd9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::ecb</td> </tr> </table> </div><div class="memdoc"> <p>The cipher's ECB functions. </p> </div> </div> <a class="anchor" id="acd180c9ad40ef38241a66607ecdb19c7"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::getfb</td> </tr> </table> </div><div class="memdoc"> <p>Pointer to the cipher's feedback-returning function. </p> </div> </div> <a class="anchor" id="ad4251f30dce3bb56c6d6d4af5effce21"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::keybitsinc</td> </tr> </table> </div><div class="memdoc"> <p>The allowed increment in key bits between min and max. </p> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="structblockCipher.html#a3500d157e1433ee5cbf9e9dfbe7b10f1" title="The minimum number of key bits. ">keybitsmin</a> and <a class="el" href="structblockCipher.html#ad42cb478c58af64dd55ba34bea672aea" title="The maximum number of key bits. ">keybitsmax</a>. </dd></dl> </div> </div> <a class="anchor" id="ad42cb478c58af64dd55ba34bea672aea"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::keybitsmax</td> </tr> </table> </div><div class="memdoc"> <p>The maximum number of key bits. </p> </div> </div> <a class="anchor" id="a3500d157e1433ee5cbf9e9dfbe7b10f1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::keybitsmin</td> </tr> </table> </div><div class="memdoc"> <p>The minimum number of key bits. </p> </div> </div> <a class="anchor" id="a6c9f539d9632b00c9b98228539254833"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::name</td> </tr> </table> </div><div class="memdoc"> <p>The blockcipher's name. </p> </div> </div> <a class="anchor" id="ae9acc23b1b4742e15acf95c44675fe42"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::paramsize</td> </tr> </table> </div><div class="memdoc"> <p>The size of the parameters required by this cipher, in bytes. </p> </div> </div> <a class="anchor" id="a66034965bc9ae136e6dc224c10b84e71"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::raw</td> </tr> </table> </div><div class="memdoc"> <p>The cipher's raw functions. </p> </div> </div> <a class="anchor" id="aedabefbac9018470145c344b463669de"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::setctr</td> </tr> </table> </div><div class="memdoc"> <p>Pointer to the cipher's ctr setup function. </p> </div> </div> <a class="anchor" id="aada7de9cfffbc798465d99a63b4981c6"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::setiv</td> </tr> </table> </div><div class="memdoc"> <p>Pointer to the cipher's initialization vector setup function. </p> </div> </div> <a class="anchor" id="a103ff53ae70c8b181770b5605d23ab80"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">blockCipher::setup</td> </tr> </table> </div><div class="memdoc"> <p>Pointer to the cipher's setup function. </p> </div> </div> <hr/>The documentation for this struct was generated from the following file:<ul> <li>include/beecrypt/<a class="el" href="beecrypt_8h_source.html">beecrypt.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Fri Sep 27 2013 02:36:25 for BeeCrypt by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.5 </small></address> </body> </html>