mirror of
https://github.com/taigrr/arduinolibs
synced 2025-01-18 04:33:12 -08:00
331 lines
22 KiB
HTML
331 lines
22 KiB
HTML
<!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.6"/>
|
|
<title>ArduinoLibs: AESCommon Class 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="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() { searchBox.OnSelectItem(0); });
|
|
</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">ArduinoLibs
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.6 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
</script>
|
|
<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>Classes</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
<li>
|
|
<div id="MSearchBox" class="MSearchBoxInactive">
|
|
<span class="left">
|
|
<img id="MSearchSelect" src="search/mag_sel.png"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
alt=""/>
|
|
<input type="text" id="MSearchField" value="Search" accesskey="S"
|
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
|
</span><span class="right">
|
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="navrow2" class="tabs2">
|
|
<ul class="tablist">
|
|
<li><a href="annotated.html"><span>Class List</span></a></li>
|
|
<li><a href="classes.html"><span>Class Index</span></a></li>
|
|
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
|
<li><a href="functions.html"><span>Class Members</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Pages</a></div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pro-methods">Protected Member Functions</a> |
|
|
<a href="classAESCommon-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">AESCommon Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Abstract base class for AES block ciphers.
|
|
<a href="classAESCommon.html#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="AES_8h_source.html">AES.h</a>></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for AESCommon:</div>
|
|
<div class="dyncontent">
|
|
<div class="center">
|
|
<img src="classAESCommon.png" usemap="#AESCommon_map" alt=""/>
|
|
<map id="AESCommon_map" name="AESCommon_map">
|
|
<area href="classBlockCipher.html" title="Abstract base class for block ciphers. " alt="BlockCipher" shape="rect" coords="95,0,180,24"/>
|
|
<area href="classAES128.html" title="AES block cipher with 128-bit keys. " alt="AES128" shape="rect" coords="0,112,85,136"/>
|
|
<area href="classAES192.html" title="AES block cipher with 192-bit keys. " alt="AES192" shape="rect" coords="95,112,180,136"/>
|
|
<area href="classAES256.html" title="AES block cipher with 256-bit keys. " alt="AES256" shape="rect" coords="190,112,275,136"/>
|
|
</map>
|
|
</div></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a8f67970c86c23affb0297fc1bb10fad8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f67970c86c23affb0297fc1bb10fad8"></a>
|
|
virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#a8f67970c86c23affb0297fc1bb10fad8">~AESCommon</a> ()</td></tr>
|
|
<tr class="memdesc:a8f67970c86c23affb0297fc1bb10fad8"><td class="mdescLeft"> </td><td class="mdescRight">Destroys this AES block cipher object after clearing sensitive information. <br/></td></tr>
|
|
<tr class="separator:a8f67970c86c23affb0297fc1bb10fad8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae26afdcc6d18e8888974acae16df1413"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413">blockSize</a> () const </td></tr>
|
|
<tr class="memdesc:ae26afdcc6d18e8888974acae16df1413"><td class="mdescLeft"> </td><td class="mdescRight">Size of an AES block in bytes. <a href="#ae26afdcc6d18e8888974acae16df1413">More...</a><br/></td></tr>
|
|
<tr class="separator:ae26afdcc6d18e8888974acae16df1413"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2d95f6159abfcd92b5841f9018e44296"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296">encryptBlock</a> (uint8_t *output, const uint8_t *input)</td></tr>
|
|
<tr class="memdesc:a2d95f6159abfcd92b5841f9018e44296"><td class="mdescLeft"> </td><td class="mdescRight">Encrypts a single block using this cipher. <a href="#a2d95f6159abfcd92b5841f9018e44296">More...</a><br/></td></tr>
|
|
<tr class="separator:a2d95f6159abfcd92b5841f9018e44296"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a95a806adf42f975765ff62907efdc639"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#a95a806adf42f975765ff62907efdc639">decryptBlock</a> (uint8_t *output, const uint8_t *input)</td></tr>
|
|
<tr class="memdesc:a95a806adf42f975765ff62907efdc639"><td class="mdescLeft"> </td><td class="mdescRight">Decrypts a single block using this cipher. <a href="#a95a806adf42f975765ff62907efdc639">More...</a><br/></td></tr>
|
|
<tr class="separator:a95a806adf42f975765ff62907efdc639"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a83e43f7d07e31d90fd7b768a93ecfce6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#a83e43f7d07e31d90fd7b768a93ecfce6">clear</a> ()</td></tr>
|
|
<tr class="memdesc:a83e43f7d07e31d90fd7b768a93ecfce6"><td class="mdescLeft"> </td><td class="mdescRight">Clears all security-sensitive state from this block cipher. <a href="#a83e43f7d07e31d90fd7b768a93ecfce6">More...</a><br/></td></tr>
|
|
<tr class="separator:a83e43f7d07e31d90fd7b768a93ecfce6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classBlockCipher"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classBlockCipher')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classBlockCipher.html">BlockCipher</a></td></tr>
|
|
<tr class="memitem:adc3d7cba116cbea9ad017f4cded6fe2f inherit pub_methods_classBlockCipher"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc3d7cba116cbea9ad017f4cded6fe2f"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="classBlockCipher.html#adc3d7cba116cbea9ad017f4cded6fe2f">BlockCipher</a> ()</td></tr>
|
|
<tr class="memdesc:adc3d7cba116cbea9ad017f4cded6fe2f inherit pub_methods_classBlockCipher"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a block cipher. <br/></td></tr>
|
|
<tr class="separator:adc3d7cba116cbea9ad017f4cded6fe2f inherit pub_methods_classBlockCipher"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acec1bc4faeaa6dda2d91bffd79a988f9 inherit pub_methods_classBlockCipher"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classBlockCipher.html#acec1bc4faeaa6dda2d91bffd79a988f9">~BlockCipher</a> ()</td></tr>
|
|
<tr class="memdesc:acec1bc4faeaa6dda2d91bffd79a988f9 inherit pub_methods_classBlockCipher"><td class="mdescLeft"> </td><td class="mdescRight">Destroys this block cipher object. <a href="#acec1bc4faeaa6dda2d91bffd79a988f9">More...</a><br/></td></tr>
|
|
<tr class="separator:acec1bc4faeaa6dda2d91bffd79a988f9 inherit pub_methods_classBlockCipher"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afde6004a859e015d877eab3c37042a0f inherit pub_methods_classBlockCipher"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classBlockCipher.html#afde6004a859e015d877eab3c37042a0f">keySize</a> () const =0</td></tr>
|
|
<tr class="memdesc:afde6004a859e015d877eab3c37042a0f inherit pub_methods_classBlockCipher"><td class="mdescLeft"> </td><td class="mdescRight">Default size of the key for this block cipher, in bytes. <a href="#afde6004a859e015d877eab3c37042a0f">More...</a><br/></td></tr>
|
|
<tr class="separator:afde6004a859e015d877eab3c37042a0f inherit pub_methods_classBlockCipher"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9a05307664469777592799c8f77397c4 inherit pub_methods_classBlockCipher"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classBlockCipher.html#a9a05307664469777592799c8f77397c4">setKey</a> (const uint8_t *key, size_t len)=0</td></tr>
|
|
<tr class="memdesc:a9a05307664469777592799c8f77397c4 inherit pub_methods_classBlockCipher"><td class="mdescLeft"> </td><td class="mdescRight">Sets the key to use for future encryption and decryption operations. <a href="#a9a05307664469777592799c8f77397c4">More...</a><br/></td></tr>
|
|
<tr class="separator:a9a05307664469777592799c8f77397c4 inherit pub_methods_classBlockCipher"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
|
|
Protected Member Functions</h2></td></tr>
|
|
<tr class="memitem:acf224a392659429bac80dc68c7471b21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf224a392659429bac80dc68c7471b21"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><a class="el" href="classAESCommon.html#acf224a392659429bac80dc68c7471b21">AESCommon</a> ()</td></tr>
|
|
<tr class="memdesc:acf224a392659429bac80dc68c7471b21"><td class="mdescLeft"> </td><td class="mdescRight">Constructs an AES block cipher object. <br/></td></tr>
|
|
<tr class="separator:acf224a392659429bac80dc68c7471b21"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Abstract base class for AES block ciphers. </p>
|
|
<p>This class is abstract. The caller should instantiate <a class="el" href="classAES128.html" title="AES block cipher with 128-bit keys. ">AES128</a>, <a class="el" href="classAES192.html" title="AES block cipher with 192-bit keys. ">AES192</a>, or <a class="el" href="classAES256.html" title="AES block cipher with 256-bit keys. ">AES256</a> to create an AES block cipher with a specific key size.</p>
|
|
<dl class="section note"><dt>Note</dt><dd>This AES implementation does not have constant cache behaviour due to the use of table lookups. It may not be safe to use this implementation in an environment where the attacker can observe the timing of encryption and decryption operations. Unless AES compatibility is required, it is recommended that the <a class="el" href="classChaCha.html" title="ChaCha stream cipher. ">ChaCha</a> stream cipher be used instead.</dd></dl>
|
|
<p>Reference: <a href="http://en.wikipedia.org/wiki/Advanced_Encryption_Standard">http://en.wikipedia.org/wiki/Advanced_Encryption_Standard</a></p>
|
|
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classChaCha.html" title="ChaCha stream cipher. ">ChaCha</a>, <a class="el" href="classAES128.html" title="AES block cipher with 128-bit keys. ">AES128</a>, <a class="el" href="classAES192.html" title="AES block cipher with 192-bit keys. ">AES192</a>, <a class="el" href="classAES256.html" title="AES block cipher with 256-bit keys. ">AES256</a> </dd></dl>
|
|
|
|
<p>Definition at line <a class="el" href="AES_8h_source.html#l00028">28</a> of file <a class="el" href="AES_8h_source.html">AES.h</a>.</p>
|
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
<a class="anchor" id="ae26afdcc6d18e8888974acae16df1413"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t AESCommon::blockSize </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Size of an AES block in bytes. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Always returns 16. </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classBlockCipher.html#a7059a310487c128db034b0ce0ad425a0">BlockCipher</a>.</p>
|
|
|
|
<p>Definition at line <a class="el" href="AESCommon_8cpp_source.html#l00144">144</a> of file <a class="el" href="AESCommon_8cpp_source.html">AESCommon.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a83e43f7d07e31d90fd7b768a93ecfce6"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void AESCommon::clear </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Clears all security-sensitive state from this block cipher. </p>
|
|
<p>Security-sensitive information includes key schedules and any temporary state that is used by <a class="el" href="classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296" title="Encrypts a single block using this cipher. ">encryptBlock()</a> or <a class="el" href="classAESCommon.html#a95a806adf42f975765ff62907efdc639" title="Decrypts a single block using this cipher. ">decryptBlock()</a> which is stored in the object itself.</p>
|
|
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classBlockCipher.html#a9a05307664469777592799c8f77397c4" title="Sets the key to use for future encryption and decryption operations. ">setKey()</a>, <a class="el" href="classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296" title="Encrypts a single block using this cipher. ">encryptBlock()</a>, <a class="el" href="classAESCommon.html#a95a806adf42f975765ff62907efdc639" title="Decrypts a single block using this cipher. ">decryptBlock()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classBlockCipher.html#a6f27d46e9dfa7761d014d828ad5f955b">BlockCipher</a>.</p>
|
|
|
|
<p>Definition at line <a class="el" href="AESCommon_8cpp_source.html#l00324">324</a> of file <a class="el" href="AESCommon_8cpp_source.html">AESCommon.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a95a806adf42f975765ff62907efdc639"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void AESCommon::decryptBlock </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>output</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const uint8_t * </td>
|
|
<td class="paramname"><em>input</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Decrypts a single block using this cipher. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">output</td><td>The output buffer to put the plaintext into. Must be at least <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> bytes in length. </td></tr>
|
|
<tr><td class="paramname">input</td><td>The input buffer to read the ciphertext from which is allowed to overlap with <em>output</em>. Must be at least <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> bytes in length.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296" title="Encrypts a single block using this cipher. ">encryptBlock()</a>, <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classBlockCipher.html#ac3ba2450222aa1ea804ae4881ab6440c">BlockCipher</a>.</p>
|
|
|
|
<p>Definition at line <a class="el" href="AESCommon_8cpp_source.html#l00295">295</a> of file <a class="el" href="AESCommon_8cpp_source.html">AESCommon.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a2d95f6159abfcd92b5841f9018e44296"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void AESCommon::encryptBlock </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>output</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const uint8_t * </td>
|
|
<td class="paramname"><em>input</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Encrypts a single block using this cipher. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">output</td><td>The output buffer to put the ciphertext into. Must be at least <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> bytes in length. </td></tr>
|
|
<tr><td class="paramname">input</td><td>The input buffer to read the plaintext from which is allowed to overlap with <em>output</em>. Must be at least <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> bytes in length.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classAESCommon.html#a95a806adf42f975765ff62907efdc639" title="Decrypts a single block using this cipher. ">decryptBlock()</a>, <a class="el" href="classAESCommon.html#ae26afdcc6d18e8888974acae16df1413" title="Size of an AES block in bytes. ">blockSize()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classBlockCipher.html#aed0788b25f6bb2f1bd47d5a5f0c5db33">BlockCipher</a>.</p>
|
|
|
|
<p>Definition at line <a class="el" href="AESCommon_8cpp_source.html#l00266">266</a> of file <a class="el" href="AESCommon_8cpp_source.html">AESCommon.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li><a class="el" href="AES_8h_source.html">AES.h</a></li>
|
|
<li><a class="el" href="AESCommon_8cpp_source.html">AESCommon.cpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated on Thu Apr 2 2015 16:36:51 for ArduinoLibs by  <a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
</a> 1.8.6
|
|
</small></address>
|
|
</body>
|
|
</html>
|