1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7    <style type="text/css"><!--
8      span.static_style
9      {
10        font-size			: 8pt;
11        color				: white;
12        font-weight			: bold;
13        background			: #44f;
14        border-left			: solid 1px #aaf;
15        border-top			: solid 1px #aaf;
16        border-right		: solid 1px #00c;
17        border-bottom		: solid 1px #00c;
18        padding-left		: 2px;
19        padding-right		: 2px;
20      }
21
22      span.virtual_style
23      {
24        font-size			 : 8pt;
25        color				 : white;
26        font-weight			: bold;
27        background			: #0a0;
28        border-left			: solid 1px #0f0;
29        border-top			: solid 1px #0f0;
30        border-right		: solid 1px #060;
31        border-bottom		: solid 1px #060;
32        padding-left		: 2px;
33        padding-right		: 2px;
34      }
35
36      span.protected_style
37      {
38        font-size			 : 8pt;
39        color				 : white;
40        font-weight			: bold;
41        background			: #444;
42        border-left			: solid 1px #ccc;
43        border-top			: solid 1px #ccc;
44        border-right		: solid 1px #222;
45        border-bottom		: solid 1px #222;
46        padding-left		: 2px;
47        padding-right		: 2px;
48      }
49        --></style>
50    <title>nn::crypto::CtrEncryptor</title>
51  </head>
52  <body>
53    <h1><CODE><a href="../../../nn/Overview.html">nn</a>::<a href="../../../nn/crypto/Overview.html">crypto</a>::CtrEncryptor</CODE> Class</h1>
54    <h2>Syntax</h2>
55    <div class="section">
56      <pre class="definition">template &lt;size_t BlockSize&gt;
57class CtrEncryptor : public <a href="../../../nn/crypto/Encryptor/Overview.html">nn::crypto::Encryptor</a></pre>
58    </div>
59    <h2>Template Arguments</h2>
60    <div class="section">
61      <table class="arguments">
62        <thead>
63          <tr>
64            <th>Name</th>
65            <td>Description</td>
66          </tr>
67        </thead>
68        <tr>
69          <th><CODE>BlockSize</CODE></th>
70          <td>Block size of the targeted block cipher.</td>
71        </tr> </table>
72    </div>
73    <h2>Description</h2>
74    <div class="section">
75      <p>Class for encrypting in CTR mode.</p><p>The cipher mode for CTR is as stipulated in NIST SP 800-38A. When implementing this class, use a simple incrementer as the function to increment the counter value.</p><p>This class is a template class that has the block size as a template parameter. Use the <CODE><a href="../../../nn/crypto/CtrDecryptor128.html">CtrDecryptor128</a></CODE> type when actually using.</p><!-- write here --></div>
76    <a name="constant" id="constant">
77      <h2>Member Constants</h2>
78      <div class="section">
79        <table class="members">
80          <tr>
81            <td width="100">
82              <span class="static_style" title="static">S</span>
83            </td>
84            <th>
85              <span class="argument"><a href="../../../nn/crypto/CtrEncryptor/BLOCK_SIZE.html"><CODE>BLOCK_SIZE</CODE></a></span>
86            </th>
87            <td width="100">const size_t</td>
88            <td>Constant representing the block size.</td>
89          </tr>
90          <tr>
91            <td width="100">
92              <span class="static_style" title="static">S</span>
93            </td>
94            <th>
95              <span class="argument"><a href="../../../nn/crypto/CtrEncryptor/IV_SIZE.html"><CODE>IV_SIZE</CODE></a></span>
96            </th>
97            <td width="100">const size_t</td>
98            <td>Constant representing the IV size.</td>
99          </tr>
100          <tr>
101            <td width="100">
102              <span class="static_style" title="static">S</span>
103            </td>
104            <th>
105              <span class="argument"><a href="../../../nn/crypto/CtrEncryptor/UNIT_SIZE.html"><CODE>UNIT_SIZE</CODE></a></span>
106            </th>
107            <td width="100">const size_t</td>
108            <td>Constant representing the processing unit size.</td>
109          </tr> </table>
110      </div>
111    </a> <a name="function" id="function">
112      <h2>Member Functions</h2>
113      <div class="section">
114        <table class="members">
115          <tr>
116            <td width="100"> <span class="virtual_style" title="virtual">V</span>
117            </td>
118            <th>
119              <a href="../../../nn/crypto/CtrEncryptor/GetIvSize.html"><CODE>GetIvSize</CODE></a>
120            </th>
121            <td>Gets the IV size.</td>
122          </tr>
123          <tr>
124            <td width="100"> <span class="virtual_style" title="virtual">V</span>
125            </td>
126            <th>
127              <a href="../../../nn/crypto/CtrEncryptor/GetUnitSize.html"><CODE>GetUnitSize</CODE></a>
128            </th>
129            <td>Gets the processing unit size.</td>
130          </tr>
131          <tr>
132            <td width="100"> <span class="virtual_style" title="virtual">V</span>
133            </td>
134            <th>
135              <a href="../../../nn/crypto/CtrEncryptor/Initialize.html"><CODE>Initialize</CODE></a>
136            </th>
137            <td>Initializes encryption.</td>
138          </tr>
139          <tr>
140            <td width="100"> <span class="virtual_style" title="virtual">V</span>
141            </td>
142            <th>
143              <a href="../../../nn/crypto/CtrEncryptor/Finalize.html"><CODE>Finalize</CODE></a>
144            </th>
145            <td>Finalizes encryption in CTR mode.</td>
146          </tr>
147          <tr>
148            <td width="100"> <span class="virtual_style" title="virtual">V</span>
149            </td>
150            <th>
151              <a href="../../../nn/crypto/CtrEncryptor/Update.html"><CODE>Update</CODE></a>
152            </th>
153            <td>Encrypts.</td>
154          </tr>
155          <tr>
156            <td width="100"> <span class="virtual_style" title="virtual">V</span>
157            </td>
158            <th>
159              <a href="../../../nn/crypto/CtrEncryptor/UpdateFinal.html"><CODE>UpdateFinal</CODE></a>
160            </th>
161            <td>Finalizes encryption.</td>
162          </tr>
163          <tr>
164            <td width="100">
165              <span class="static_style" title="static">S</span> </td>
166            <th>
167              <a href="../../../nn/crypto/CtrEncryptor/Encrypt.html"><CODE>Encrypt</CODE></a>
168            </th>
169            <td>Handles batch encryption when in CTR mode.</td>
170          </tr> </table>
171      </div>
172    </a>
173    <h2>Class Hierarchy</h2>
174    <div class="section">
175      <p class="hierarchy"><a href="../../../nn/crypto/CipherMode/Overview.html">nn::crypto::CipherMode</a><br />&nbsp;&nbsp;<a href="../../../nn/crypto/Encryptor/Overview.html">nn::crypto::Encryptor</a><br />&nbsp;&nbsp;&nbsp;&nbsp;<b>nn::crypto::CtrEncryptor</b>
176      </p>
177    </div>
178    <h2>Revision History</h2>
179    <div class="section">
180      <dl class="history">
181        <dt>2011/10/27</dt>
182        <dd>Initial version.<br />
183        </dd>
184      </dl>
185    </div>
186  <hr><p>CONFIDENTIAL</p></body>
187</html>