📄 class_o_f_b___mode_policy.html
字号:
</div><p><hr><h2>Member Function Documentation</h2><a class="anchor" name="8c9304fff5af593ee68d3cf0d33c06e9"></a><!-- doxytag: member="OFB_ModePolicy::Ref" ref="8c9304fff5af593ee68d3cf0d33c06e9" args="()" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_stream_transformation.html">StreamTransformation</a>& StreamTransformation::Ref </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, inherited]</code></td> </tr> </table></div><div class="memdoc"><p>return a reference to this object, <p>This function is useful for passing a temporary <a class="el" href="class_stream_transformation.html" title="interface for the data processing part of stream ciphers">StreamTransformation</a> object to a function that takes a non-const reference. <p>Definition at line <a class="el" href="cryptlib_8h-source.html#l00470">470</a> of file <a class="el" href="cryptlib_8h-source.html">cryptlib.h</a>.</div></div><p><a class="anchor" name="f66ef64545279c01310718af3d627534"></a><!-- doxytag: member="OFB_ModePolicy::OptimalBlockSize" ref="f66ef64545279c01310718af3d627534" args="() const" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual unsigned int StreamTransformation::OptimalBlockSize </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline, virtual, inherited]</code></td> </tr> </table></div><div class="memdoc"><p>returns the input block size that is most efficient for this cipher <p><dl class="note" compact><dt><b>Note:</b></dt><dd>optimal input length is n * <a class="el" href="class_stream_transformation.html#f66ef64545279c01310718af3d627534" title="returns the input block size that is most efficient for this cipher">OptimalBlockSize()</a> - <a class="el" href="class_stream_transformation.html#b8422f6eee08fbc70069e222186e90de" title="returns how much of the current block is used up">GetOptimalBlockSizeUsed()</a> for any n > 0 </dd></dl><p>Reimplemented in <a class="el" href="class_e_c_b___one_way.html#697d02a4fbec48b4accec6ce4226e083">ECB_OneWay</a>.<p>Definition at line <a class="el" href="cryptlib_8h-source.html#l00477">477</a> of file <a class="el" href="cryptlib_8h-source.html">cryptlib.h</a>.<p>Referenced by <a class="el" href="filters_8cpp-source.html#l00574">StreamTransformationFilter::FirstPut()</a>.</div></div><p><a class="anchor" name="26feabde21bc4d1783195969733e3bb0"></a><!-- doxytag: member="OFB_ModePolicy::ProcessData" ref="26feabde21bc4d1783195969733e3bb0" args="(byte *outString, const byte *inString, size_t length)=0" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void StreamTransformation::ProcessData </td> <td>(</td> <td class="paramtype">byte * </td> <td class="paramname"> <em>outString</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const byte * </td> <td class="paramname"> <em>inString</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>length</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual, inherited]</code></td> </tr> </table></div><div class="memdoc"><p>encrypt or decrypt an array of bytes of specified length <p><dl class="note" compact><dt><b>Note:</b></dt><dd>either inString == outString, or they don't overlap </dd></dl><p>Implemented in <a class="el" href="class_weak1_1_1_a_r_c4___base.html#a20124dfc1bac5050b1cd922e552ba95">Weak1::ARC4_Base</a>, <a class="el" href="class_public_blum_blum_shub.html#fb03a58653cb83c9a9013f3a57105bfc">PublicBlumBlumShub</a>, and <a class="el" href="class_block_oriented_cipher_mode_base.html#947329920de17742397a7c0fd01d3364">BlockOrientedCipherModeBase</a>.<p>Referenced by <a class="el" href="filters_8cpp-source.html#l00613">StreamTransformationFilter::LastPut()</a>, and <a class="el" href="cryptlib_8cpp-source.html#l00119">StreamTransformation::ProcessLastBlock()</a>.</div></div><p><a class="anchor" name="0668b78edaea082f87bf3e878c4c02f7"></a><!-- doxytag: member="OFB_ModePolicy::ProcessLastBlock" ref="0668b78edaea082f87bf3e878c4c02f7" args="(byte *outString, const byte *inString, size_t length)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">void StreamTransformation::ProcessLastBlock </td> <td>(</td> <td class="paramtype">byte * </td> <td class="paramname"> <em>outString</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const byte * </td> <td class="paramname"> <em>inString</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>length</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [virtual, inherited]</code></td> </tr> </table></div><div class="memdoc"><p>for ciphers where the last block of data is special, encrypt or decrypt the last block of data <p>For now the only use of this function is for CBC-CTS mode. <p>Reimplemented in <a class="el" href="class_c_b_c___c_t_s___encryption.html#fa5e227b89c39bff1386df7cebaa5f32">CBC_CTS_Encryption</a>, and <a class="el" href="class_c_b_c___c_t_s___decryption.html#2f23aad280dc56920f16ea0711b39d89">CBC_CTS_Decryption</a>.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -