⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class_t_t_m_a_c.html

📁 著名的密码库Crypto++的文档 C++语言的杰作。程序员必备。
💻 HTML
📖 第 1 页 / 共 4 页
字号:
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d53da712634ea213ad047b2a68b0fe70"></a><!-- doxytag: member="TTMAC::Restart" ref="d53da712634ea213ad047b2a68b0fe70" args="()" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash_base.html#d53da712634ea213ad047b2a68b0fe70">Restart</a> ()</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">discard the current state, and restart with a new message <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_hash_transformation.html">HashTransformation</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#39b0a4c4cdc11fda358f9975b5e4137e">Ref</a> ()</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return a reference to this object,  <a href="#39b0a4c4cdc11fda358f9975b5e4137e"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#a0b8c7a110d8968268fd02ec32b9a8e8">Final</a> (byte *digest)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">compute hash for current message, then restart for a new message  <a href="#a0b8c7a110d8968268fd02ec32b9a8e8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f8124c4fca23b74bbdc43660bdae692c"></a><!-- doxytag: member="TTMAC::CalculateDigest" ref="f8124c4fca23b74bbdc43660bdae692c" args="(byte *digest, const byte *input, size_t length)" -->virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#f8124c4fca23b74bbdc43660bdae692c">CalculateDigest</a> (byte *digest, const byte *input, size_t length)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">use this if your input is in one piece and you don't want to call <a class="el" href="class_hash_transformation.html#afabefaf445b65d3ba0d8e1c0294afe5" title="process more input">Update()</a> and <a class="el" href="class_hash_transformation.html#a0b8c7a110d8968268fd02ec32b9a8e8" title="compute hash for current message, then restart for a new message">Final()</a> separately <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#16c4aecd047015d513feef4ed5b929ba">Verify</a> (const byte *digest)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">verify that digest is a valid digest for the current message, then reinitialize the object  <a href="#16c4aecd047015d513feef4ed5b929ba"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cad96df68e70d922683e5063057130b2"></a><!-- doxytag: member="TTMAC::VerifyDigest" ref="cad96df68e70d922683e5063057130b2" args="(const byte *digest, const byte *input, size_t length)" -->virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#cad96df68e70d922683e5063057130b2">VerifyDigest</a> (const byte *digest, const byte *input, size_t length)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">use this if your input is in one piece and you don't want to call <a class="el" href="class_hash_transformation.html#afabefaf445b65d3ba0d8e1c0294afe5" title="process more input">Update()</a> and <a class="el" href="class_hash_transformation.html#16c4aecd047015d513feef4ed5b929ba" title="verify that digest is a valid digest for the current message, then reinitialize the...">Verify()</a> separately <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b6917657eaec935750fd83e28270d76"></a><!-- doxytag: member="TTMAC::CalculateTruncatedDigest" ref="0b6917657eaec935750fd83e28270d76" args="(byte *digest, size_t digestSize, const byte *input, size_t length)" -->virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#0b6917657eaec935750fd83e28270d76">CalculateTruncatedDigest</a> (byte *digest, size_t digestSize, const byte *input, size_t length)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">truncated version of <a class="el" href="class_hash_transformation.html#f8124c4fca23b74bbdc43660bdae692c" title="use this if your input is in one piece and you don't want to call Update() and Final()...">CalculateDigest()</a> <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0f6069eadf492d970c3eb8cdf656e742"></a><!-- doxytag: member="TTMAC::TruncatedVerify" ref="0f6069eadf492d970c3eb8cdf656e742" args="(const byte *digest, size_t digestLength)" -->virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#0f6069eadf492d970c3eb8cdf656e742">TruncatedVerify</a> (const byte *digest, size_t digestLength)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">truncated version of <a class="el" href="class_hash_transformation.html#16c4aecd047015d513feef4ed5b929ba" title="verify that digest is a valid digest for the current message, then reinitialize the...">Verify()</a> <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7958e99717019e8b9f91672bdfe9e086"></a><!-- doxytag: member="TTMAC::VerifyTruncatedDigest" ref="7958e99717019e8b9f91672bdfe9e086" args="(const byte *digest, size_t digestLength, const byte *input, size_t length)" -->virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_hash_transformation.html#7958e99717019e8b9f91672bdfe9e086">VerifyTruncatedDigest</a> (const byte *digest, size_t digestLength, const byte *input, size_t length)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">truncated version of <a class="el" href="class_hash_transformation.html#cad96df68e70d922683e5063057130b2" title="use this if your input is in one piece and you don't want to call Update() and Verify()...">VerifyDigest()</a> <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2229cdb9d7ac7e2cf3b02b39ae59ad77"></a><!-- doxytag: member="TTMAC::IsValidKeyLength" ref="2229cdb9d7ac7e2cf3b02b39ae59ad77" args="(size_t n) const" -->virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#2229cdb9d7ac7e2cf3b02b39ae59ad77">IsValidKeyLength</a> (size_t n) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns whether n is a valid key length <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#df3c29b3ef3af74788a58c7c49887fd7">SetKey</a> (const byte *key, size_t length, const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;params=<a class="el" href="cryptlib_8h.html#d3205973dd1afa14090a683154c1109c">g_nullNameValuePairs</a>)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set or reset the key of this object  <a href="#df3c29b3ef3af74788a58c7c49887fd7"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0401f9c67930805180964bc02ae0ac1c"></a><!-- doxytag: member="TTMAC::SetKeyWithRounds" ref="0401f9c67930805180964bc02ae0ac1c" args="(const byte *key, size_t length, int rounds)" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#0401f9c67930805180964bc02ae0ac1c">SetKeyWithRounds</a> (const byte *key, size_t length, int rounds)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calls <a class="el" href="class_simple_keying_interface.html#df3c29b3ef3af74788a58c7c49887fd7" title="set or reset the key of this object">SetKey()</a> with an <a class="el" href="class_name_value_pairs.html" title="interface for retrieving values given their names">NameValuePairs</a> object that just specifies "Rounds" <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c25e27eaeae2e909741c07de93caef49"></a><!-- doxytag: member="TTMAC::SetKeyWithIV" ref="c25e27eaeae2e909741c07de93caef49" args="(const byte *key, size_t length, const byte *iv)" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#c25e27eaeae2e909741c07de93caef49">SetKeyWithIV</a> (const byte *key, size_t length, const byte *iv)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calls <a class="el" href="class_simple_keying_interface.html#df3c29b3ef3af74788a58c7c49887fd7" title="set or reset the key of this object">SetKey()</a> with an <a class="el" href="class_name_value_pairs.html" title="interface for retrieving values given their names">NameValuePairs</a> object that just specifies "IV" <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#71039112353cc70e9859ebd95037cc1a">IsResynchronizable</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns whether this object can be resynchronized (i.e. supports initialization vectors)  <a href="#71039112353cc70e9859ebd95037cc1a"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a09fd0893ac8c6068e07ce30bb55c1d9"></a><!-- doxytag: member="TTMAC::CanUseRandomIVs" ref="a09fd0893ac8c6068e07ce30bb55c1d9" args="() const" -->bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#a09fd0893ac8c6068e07ce30bb55c1d9">CanUseRandomIVs</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns whether this object can use random IVs (in addition to ones returned by GetNextIV) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b98803e8744b73663e7e9c872eef822b"></a><!-- doxytag: member="TTMAC::CanUsePredictableIVs" ref="b98803e8744b73663e7e9c872eef822b" args="() const" -->bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#b98803e8744b73663e7e9c872eef822b">CanUsePredictableIVs</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns whether this object can use random but possibly predictable IVs (in addition to ones returned by GetNextIV) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fbf7065f7db5439d471d1bcc260d3bd5"></a><!-- doxytag: member="TTMAC::CanUseStructuredIVs" ref="fbf7065f7db5439d471d1bcc260d3bd5" args="() const" -->bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#fbf7065f7db5439d471d1bcc260d3bd5">CanUseStructuredIVs</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns whether this object can use structured IVs, for example a counter (in addition to ones returned by GetNextIV) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ee3f5f9c00d193bf9d8fd8aa46ccbb2"></a><!-- doxytag: member="TTMAC::Resynchronize" ref="8ee3f5f9c00d193bf9d8fd8aa46ccbb2" args="(const byte *IV)" -->virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#8ee3f5f9c00d193bf9d8fd8aa46ccbb2">Resynchronize</a> (const byte *IV)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">resynchronize with an IV <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_simple_keying_interface.html#917224bb6df7431d6469e7a10feac5fa">GetNextIV</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, byte *IV)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a secure IV for the next message  <a href="#917224bb6df7431d6469e7a10feac5fa"></a><br></td></tr><tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d608152f1b6ef03772d9b9616d6ab86"></a><!-- doxytag: member="TTMAC::StaticAlgorithmName" ref="4d608152f1b6ef03772d9b9616d6ab86" args="()" -->static std::string __cdecl&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_algorithm_impl.html#4d608152f1b6ef03772d9b9616d6ab86">StaticAlgorithmName</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6052c926d7d040b524a829e96710496"></a><!-- doxytag: member="TTMAC::StaticGetValidKeyLength" ref="f6052c926d7d040b524a829e96710496" args="(size_t)" -->static size_t __cdecl&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#f6052c926d7d040b524a829e96710496">StaticGetValidKeyLength</a> (size_t)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="394a6ed0dd2a885652cd203ad4fa5fe0"></a><!-- doxytag: member="TTMAC::CorrectEndianess" ref="394a6ed0dd2a885652cd203ad4fa5fe0" args="(HashWordType *out, const HashWordType *in, size_t byteCount)" -->static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash.html#394a6ed0dd2a885652cd203ad4fa5fe0">CorrectEndianess</a> (<a class="el" href="class_iterated_hash.html#ce0350088eea8679cbe23668d2498c07">HashWordType</a> *out, const <a class="el" href="class_iterated_hash.html#ce0350088eea8679cbe23668d2498c07">HashWordType</a> *in, size_t byteCount)</td></tr><tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e82f65af091adcea740c399e31f6c17c"></a><!-- doxytag: member="TTMAC::DIGESTSIZE" ref="e82f65af091adcea740c399e31f6c17c" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t_t_m_a_c___base.html#e82f65af091adcea740c399e31f6c17c">DIGESTSIZE</a> = 20</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b994d881a105849f64a973373e8f282c"></a><!-- doxytag: member="TTMAC::KEYLENGTH" ref="b994d881a105849f64a973373e8f282c" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#b994d881a105849f64a973373e8f282c">KEYLENGTH</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="198440f34bfe0f343fab3cdbef586a3b"></a><!-- doxytag: member="TTMAC::MIN_KEYLENGTH" ref="198440f34bfe0f343fab3cdbef586a3b" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#198440f34bfe0f343fab3cdbef586a3b">MIN_KEYLENGTH</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c599a7ebb4e0fa4773c4cd1b4023b18"></a><!-- doxytag: member="TTMAC::MAX_KEYLENGTH" ref="7c599a7ebb4e0fa4773c4cd1b4023b18" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#7c599a7ebb4e0fa4773c4cd1b4023b18">MAX_KEYLENGTH</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e9951e11c42a0a8c75bd959bcf26f31"></a><!-- doxytag: member="TTMAC::DEFAULT_KEYLENGTH" ref="1e9951e11c42a0a8c75bd959bcf26f31" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#1e9951e11c42a0a8c75bd959bcf26f31">DEFAULT_KEYLENGTH</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b1a634167fe78a3ee06554a268e6d61c"></a><!-- doxytag: member="TTMAC::IV_REQUIREMENT" ref="b1a634167fe78a3ee06554a268e6d61c" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#b1a634167fe78a3ee06554a268e6d61c">IV_REQUIREMENT</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="467a0101968e4181f770509e19ebef28"></a><!-- doxytag: member="TTMAC::IV_LENGTH" ref="467a0101968e4181f770509e19ebef28" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fixed_key_length.html#467a0101968e4181f770509e19ebef28">IV_LENGTH</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c5b97a3f0d607c914d025581e0ecf80e"></a><!-- doxytag: member="TTMAC::BLOCKSIZE" ref="c5b97a3f0d607c914d025581e0ecf80e" args="" -->static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash.html#c5b97a3f0d607c914d025581e0ecf80e">BLOCKSIZE</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="66e54da4b22f08f90e4df56fc486c0cc"></a><!-- doxytag: member="TTMAC::cryptopp_assert___LINE__" ref="66e54da4b22f08f90e4df56fc486c0cc" args="" -->static <a class="el" href="struct_compile_assert.html">CompileAssert</a>&lt;((T_BlockSize <br>&amp;(T_BlockSize-1))==0)&gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash.html#66e54da4b22f08f90e4df56fc486c0cc">cryptopp_assert___LINE__</a></td></tr><tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64183fdbc641b26ef684917f1ffe7cbf"></a><!-- doxytag: member="TTMAC::HashEndianCorrectedBlock" ref="64183fdbc641b26ef684917f1ffe7cbf" args="(const word32 *data)" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t_t_m_a_c___base.html#64183fdbc641b26ef684917f1ffe7cbf">HashEndianCorrectedBlock</a> (const word32 *data)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2a788752a18c19299603bc9e36440fd8"></a><!-- doxytag: member="TTMAC::HashEndianCorrectedBlock" ref="2a788752a18c19299603bc9e36440fd8" args="(const HashWordType *data)=0" -->virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><b>HashEndianCorrectedBlock</b> (const <a class="el" href="class_iterated_hash.html#ce0350088eea8679cbe23668d2498c07">HashWordType</a> *data)=0</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58be914986bca1fa4a53fe051707e774"></a><!-- doxytag: member="TTMAC::Init" ref="58be914986bca1fa4a53fe051707e774" args="()" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t_t_m_a_c___base.html#58be914986bca1fa4a53fe051707e774">Init</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5103ffe31e652128400bfd98e6d26cad"></a><!-- doxytag: member="TTMAC::StateBuf" ref="5103ffe31e652128400bfd98e6d26cad" args="()" -->word32 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t_t_m_a_c___base.html#5103ffe31e652128400bfd98e6d26cad">StateBuf</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7561b749600677c9a28bcf4d943e272"></a><!-- doxytag: member="TTMAC::DataBuf" ref="a7561b749600677c9a28bcf4d943e272" args="()" -->word32 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash.html#a7561b749600677c9a28bcf4d943e272">DataBuf</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db8961e69e48b194b83815d5466f8e7d"></a><!-- doxytag: member="TTMAC::GetBitCountHi" ref="db8961e69e48b194b83815d5466f8e7d" args="() const" -->word32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash_base.html#db8961e69e48b194b83815d5466f8e7d">GetBitCountHi</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a2dadd15d5ef537cf6e0286f42ab62c8"></a><!-- doxytag: member="TTMAC::GetBitCountLo" ref="a2dadd15d5ef537cf6e0286f42ab62c8" args="() const" -->word32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_iterated_hash_base.html#a2dadd15d5ef537cf6e0286f42ab62c8">GetBitCountLo</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="01f39339fa69510303ad401245df1037"></a><!-- doxytag: member="TTMAC::PadLastBlock" ref="01f39339fa69510303ad401245df1037" args="(unsigned int lastBlockSize, byte padFirst=0x80)" -->void&nbsp;</td><td class="memItemRight" valign="bottom"><b>PadLastBlock</b> (unsigned int lastBlockSize, byte padFirst=0x80)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8127a31f5c7700602a34e78285f53e57"></a><!-- doxytag: member="TTMAC::HashMultipleBlocks" ref="8127a31f5c7700602a34e78285f53e57" args="(const word32 *input, size_t length)" -->virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>HashMultipleBlocks</b> (const word32 *input, size_t length)</td></tr>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -