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

📄 class_t_f___encryptor_base.html

📁 Crypto++是一个非常强大的密码学库,主要是功能全
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>Crypto++: TF_EncryptorBase class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.2 --><div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div><h1>TF_EncryptorBase Class Reference</h1><code>#include &lt;<a class="el" href="pubkey_8h-source.html">pubkey.h</a>&gt;</code><p><p>Inheritance diagram for TF_EncryptorBase:<p><center><img src="class_t_f___encryptor_base.png" usemap="#TF_EncryptorBase_map" border="0" alt=""></center><map name="TF_EncryptorBase_map"><area href="class_t_f___crypto_system_base.html" alt="TF_CryptoSystemBase< PK_FixedLengthEncryptor, TF_Base< RandomizedTrapdoorFunction > >" shape="rect" coords="1004,336,1568,360"><area href="class_p_k___fixed_length_encryptor.html" alt="PK_FixedLengthEncryptor" shape="rect" coords="717,280,1281,304"><area href="class_t_f___base.html" alt="TF_Base< RandomizedTrapdoorFunction >" shape="rect" coords="1291,280,1855,304"><area href="class_p_k___encryptor.html" alt="PK_Encryptor" shape="rect" coords="287,224,851,248"><area href="class_p_k___fixed_length_crypto_system.html" alt="PK_FixedLengthCryptoSystem" shape="rect" coords="1148,224,1712,248"><area href="class_p_k___crypto_system.html" alt="PK_CryptoSystem" shape="rect" coords="0,168,564,192"><area href="class_public_key_algorithm.html" alt="PublicKeyAlgorithm" shape="rect" coords="574,168,1138,192"><area href="class_p_k___crypto_system.html" alt="PK_CryptoSystem" shape="rect" coords="1148,168,1712,192"><area href="class_asymmetric_algorithm.html" alt="AsymmetricAlgorithm" shape="rect" coords="574,112,1138,136"><area href="class_algorithm.html" alt="Algorithm" shape="rect" coords="574,56,1138,80"><area href="class_clonable.html" alt="Clonable" shape="rect" coords="574,0,1138,24"><area href="class_t_f___object_impl_base.html" alt="TF_ObjectImplBase< TF_EncryptorBase, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey >" shape="rect" coords="1004,504,1568,528"><area href="class_t_f___object_impl.html" alt="TF_ObjectImpl< TF_EncryptorBase, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey >" shape="rect" coords="1004,560,1568,584"><area href="class_t_f___public_object_impl.html" alt="TF_PublicObjectImpl< TF_EncryptorBase, SCHEME_OPTIONS >" shape="rect" coords="1004,616,1568,640"><area href="class_t_f___encryptor_impl.html" alt="TF_EncryptorImpl< SCHEME_OPTIONS >" shape="rect" coords="1004,672,1568,696"></map><a href="class_t_f___encryptor_base-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2><p><p>Definition at line <a class="el" href="pubkey_8h-source.html#l00174">174</a> of file <a class="el" href="pubkey_8h-source.html">pubkey.h</a>.<table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a9">Encrypt</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, const byte *plainText, unsigned int plainTextLength, byte *cipherText) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">encrypt a byte string </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a9"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___crypto_system_basea0" doxytag="TF_EncryptorBase::FixedMaxPlaintextLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>FixedMaxPlaintextLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___crypto_system_basea1" doxytag="TF_EncryptorBase::FixedCiphertextLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>FixedCiphertextLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a12">CreateEncryptionFilter</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> *attachment=NULL) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a new encryption filter </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a12"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a13">MaxPlaintextLength</a> (unsigned int cipherTextLength) const=0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">maximum length of plaintext for a given ciphertext length </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a13"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a14">MaxPlaintextLength</a> (unsigned int cipherTextLength) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">maximum length of plaintext for a given ciphertext length </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a14"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a15">CiphertextLength</a> (unsigned int plainTextLength) const=0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calculate length of ciphertext given length of plaintext </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a15"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a16">CiphertextLength</a> (unsigned int plainTextLength) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calculate length of ciphertext given length of plaintext </em> <a href="#_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a16"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_verifier_with_recovery_templatea19" doxytag="TF_EncryptorBase::AccessMaterial"></a><a class="el" href="class_crypto_material.html">CryptoMaterial</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_verifier_with_recovery_templatea19">AccessMaterial</a> ()</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns a reference to the crypto material used by this object <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_verifier_with_recovery_templatea20" doxytag="TF_EncryptorBase::GetMaterial"></a>const <a class="el" href="class_crypto_material.html">CryptoMaterial</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_verifier_with_recovery_templatea20">GetMaterial</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns a const reference to the crypto material used by this object <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___encryptor_basea10" doxytag="TF_EncryptorBase::AccessPublicKey"></a>virtual <a class="el" href="class_public_key.html">PublicKey</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>AccessPublicKey</b> ()=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_verifier_with_recovery_templatea21" doxytag="TF_EncryptorBase::GetPublicKey"></a>virtual const <a class="el" href="class_public_key.html">PublicKey</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetPublicKey</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha24" doxytag="TF_EncryptorBase::BERDecode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_x_t_r___d_ha24">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">for backwards compatibility, calls <a class="el" href="class_asymmetric_algorithm.html#_asymmetric_algorithma0">AccessMaterial()</a>.Load(bt) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_verifier_with_recovery_templatea23" doxytag="TF_EncryptorBase::DEREncode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_verifier_with_recovery_templatea23">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">for backwards compatibility, calls <a class="el" href="class_asymmetric_algorithm.html#_asymmetric_algorithma1">GetMaterial()</a>.Save(bt) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_zlib_decompressora17" doxytag="TF_EncryptorBase::AlgorithmName"></a>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_zlib_decompressora17">AlgorithmName</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns name of this algorithm, not universally implemented yet <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_zlib_decompressora18" doxytag="TF_EncryptorBase::Clone"></a>virtual <a class="el" href="class_clonable.html">Clonable</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_t_f___encryptor_base.html#_zlib_decompressora18">Clone</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">this is not implemented by most classes yet <br><br></td></tr><tr><td colspan=2><br><h2>Protected Types</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___basex0" doxytag="TF_EncryptorBase::TrapdoorFunctionInterface"></a>typedef <a class="el" href="class_randomized_trapdoor_function.html">RandomizedTrapdoorFunction</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>TrapdoorFunctionInterface</b></td></tr><tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___crypto_system_baseb0" doxytag="TF_EncryptorBase::PaddedBlockBitLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>PaddedBlockBitLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___baseb0" doxytag="TF_EncryptorBase::PaddedBlockByteLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>PaddedBlockByteLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___baseb1" doxytag="TF_EncryptorBase::GetTrapdoorFunctionBounds"></a>virtual const <a class="el" href="class_trapdoor_function_bounds.html">TrapdoorFunctionBounds</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetTrapdoorFunctionBounds</b> () const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___baseb2" doxytag="TF_EncryptorBase::GetPaddingAlgorithm"></a>virtual const <a class="el" href="class_p_k___padding_algorithm.html">PK_PaddingAlgorithm</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetPaddingAlgorithm</b> () const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_t_f___baseb4" doxytag="TF_EncryptorBase::GetTrapdoorFunctionInterface"></a>virtual const TrapdoorFunctionInterface &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetTrapdoorFunctionInterface</b> () const=0</td></tr></table><hr><h2>Member Function Documentation</h2><a name="_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a9" doxytag="TF_EncryptorBase::Encrypt"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> void TF_EncryptorBase::Encrypt </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top"><a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;&nbsp;</td>          <td class="mdname" nowrap> <em>rng</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>const byte *&nbsp;</td>          <td class="mdname" nowrap> <em>plainText</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>unsigned int&nbsp;</td>          <td class="mdname" nowrap> <em>plainTextLength</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>byte *&nbsp;</td>          <td class="mdname" nowrap> <em>cipherText</em></td>        </tr>        <tr>          <td></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"> const<code> [virtual]</code></td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>encrypt a byte string <p><dl compact><dt><b>Precondition:</b></dt><dd>CipherTextLength(plainTextLength) != 0 (i.e., plainText isn't too long) <p>size of cipherText == CipherTextLength(plainTextLength)</dd></dl><p>Implements <a class="el" href="class_p_k___encryptor.html#_t_f___crypto_system_base_3_01_p_k___fixed_length_encryptor_00_01_t_f___base_3_01_randomized_trapdoor_function_01_4_01_4a2">PK_Encryptor</a>.<p>Definition at line <a class="el" href="pubkey_8cpp-source.html#l00051">51</a> of file <a class="el" href="pubkey_8cpp-source.html">pubkey.cpp</a>.<p>References <a class="el" href="cryptlib_8h-source.html#l00343">Algorithm::AlgorithmName()</a>, <a class="el" href="integer_8cpp-source.html#l02866">Integer::Encode()</a>, and <a class="el" href="secblock_8h-source.html#l00264">SecBlock&lt; byte &gt;::size()</a>.    </td>  </tr></table><a name="_t_f___public_object_impl_3_01_t_f___encryptor_base_00_01_s_c_h_e_m_e___o_p_t_i_o_n_s_01_4a12" doxytag="TF_EncryptorBase::CreateEncryptionFilter"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> * PK_Encryptor::CreateEncryptionFilter </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top"><a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;&nbsp;</td>          <td class="mdname" nowrap> <em>rng</em>, </td>

⌨️ 快捷键说明

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