📄 class_d_l___encryptor_impl.html
字号:
<!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++: TemplateDL_EncryptorImpl< SCHEME_OPTIONS > 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div><h1>DL_EncryptorImpl< SCHEME_OPTIONS > Class Template Reference</h1><code>#include <<a class="el" href="pubkey_8h-source.html">pubkey.h</a>></code><p><p>Inheritance diagram for DL_EncryptorImpl< SCHEME_OPTIONS >:<p><center><img src="class_d_l___encryptor_impl.png" usemap="#DL_EncryptorImpl< SCHEME_OPTIONS >_map" border="0" alt=""></center><map name="DL_EncryptorImpl< SCHEME_OPTIONS >_map"><area href="class_d_l___public_object_impl.html" alt="DL_PublicObjectImpl< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS >" shape="rect" coords="1144,560,1897,584"><area href="class_d_l___object_impl.html" alt="DL_ObjectImpl< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey >" shape="rect" coords="763,504,1516,528"><area href="class_public_key_copier.html" alt="PublicKeyCopier< SCHEME_OPTIONS >" shape="rect" coords="1526,504,2279,528"><area href="class_d_l___object_impl_base.html" alt="DL_ObjectImplBase< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey >" shape="rect" coords="763,448,1516,472"><area href="class_d_l___encryptor_base.html" alt="DL_EncryptorBase< SCHEME_OPTIONS::Element >" shape="rect" coords="763,336,1516,360"><area href="class_d_l___crypto_system_base.html" alt="DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< SCHEME_OPTIONS::Element > >" shape="rect" coords="763,280,1516,304"><area href="class_p_k___encryptor.html" alt="PK_Encryptor" shape="rect" coords="381,224,1134,248"><area href="class_d_l___base.html" alt="DL_Base< DL_PublicKey< SCHEME_OPTIONS::Element > >" shape="rect" coords="1144,224,1897,248"><area href="class_p_k___crypto_system.html" alt="PK_CryptoSystem" shape="rect" coords="0,168,753,192"><area href="class_public_key_algorithm.html" alt="PublicKeyAlgorithm" shape="rect" coords="763,168,1516,192"><area href="class_asymmetric_algorithm.html" alt="AsymmetricAlgorithm" shape="rect" coords="763,112,1516,136"><area href="class_algorithm.html" alt="Algorithm" shape="rect" coords="763,56,1516,80"><area href="class_clonable.html" alt="Clonable" shape="rect" coords="763,0,1516,24"></map><a href="class_d_l___encryptor_impl-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2><h3>template<class SCHEME_OPTIONS><br> class DL_EncryptorImpl< SCHEME_OPTIONS ></h3><p><p>Definition at line <a class="el" href="pubkey_8h-source.html#l01334">1334</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 Types</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___object_implw0" doxytag="DL_EncryptorImpl::Element"></a>typedef SCHEME_OPTIONS::PublicKey::Element </td><td class="memItemRight" valign=bottom><b>Element</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_implw0" doxytag="DL_EncryptorImpl::SchemeOptions"></a>typedef SCHEME_OPTIONS </td><td class="memItemRight" valign=bottom><b>SchemeOptions</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_implw1" doxytag="DL_EncryptorImpl::KeyClass"></a>typedef SCHEME_OPTIONS::PublicKey </td><td class="memItemRight" valign=bottom><b>KeyClass</b></td></tr><tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___public_object_impla0" doxytag="DL_EncryptorImpl::CopyKeyInto"></a>void </td><td class="memItemRight" valign=bottom><b>CopyKeyInto</b> (typename SCHEME_OPTIONS::PublicKey &key) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_impla4" doxytag="DL_EncryptorImpl::AccessPrivateKey"></a><a class="el" href="class_private_key.html">PrivateKey</a> & </td><td class="memItemRight" valign=bottom><b>AccessPrivateKey</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_impla5" doxytag="DL_EncryptorImpl::AccessPublicKey"></a><a class="el" href="class_public_key.html">PublicKey</a> & </td><td class="memItemRight" valign=bottom><b>AccessPublicKey</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_impla6" doxytag="DL_EncryptorImpl::GetKey"></a>const KeyClass & </td><td class="memItemRight" valign=bottom><b>GetKey</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_impla7" doxytag="DL_EncryptorImpl::AccessKey"></a>KeyClass & </td><td class="memItemRight" valign=bottom><b>AccessKey</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_algorithm_impla0" doxytag="DL_EncryptorImpl::AlgorithmName"></a>std::string </td><td class="memItemRight" valign=bottom><b>AlgorithmName</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><b>Encrypt</b> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, const byte *plainText, unsigned int plainTextLength, byte *cipherText) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">encrypt a byte string </em> <a href="#_d_l___encryptor_basea0"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int </td><td class="memItemRight" valign=bottom><b>MaxPlaintextLength</b> (unsigned int cipherTextLength) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">maximum length of plaintext for a given ciphertext length </em> <a href="#_d_l___crypto_system_basea0"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int </td><td class="memItemRight" valign=bottom><b>CiphertextLength</b> (unsigned int plainTextLength) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">calculate length of ciphertext given length of plaintext </em> <a href="#_d_l___crypto_system_basea1"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.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> &rng, <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> *attachment=NULL) const</td></tr><tr><td class="mdescLeft"> </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><a name="_verifier_with_recovery_templatea19" doxytag="DL_EncryptorImpl::AccessMaterial"></a><a class="el" href="class_crypto_material.html">CryptoMaterial</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.html#_verifier_with_recovery_templatea19">AccessMaterial</a> ()</td></tr><tr><td class="mdescLeft"> </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="DL_EncryptorImpl::GetMaterial"></a>const <a class="el" href="class_crypto_material.html">CryptoMaterial</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.html#_verifier_with_recovery_templatea20">GetMaterial</a> () const</td></tr><tr><td class="mdescLeft"> </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="_verifier_with_recovery_templatea21" doxytag="DL_EncryptorImpl::GetPublicKey"></a>virtual const <a class="el" href="class_public_key.html">PublicKey</a> & </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="DL_EncryptorImpl::BERDecode"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.html#_x_t_r___d_ha24">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="mdescLeft"> </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="DL_EncryptorImpl::DEREncode"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.html#_verifier_with_recovery_templatea23">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const</td></tr><tr><td class="mdescLeft"> </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_decompressora18" doxytag="DL_EncryptorImpl::Clone"></a>virtual <a class="el" href="class_clonable.html">Clonable</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___encryptor_impl.html#_zlib_decompressora18">Clone</a> () const</td></tr><tr><td class="mdescLeft"> </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="_d_l___crypto_system_basex0" doxytag="DL_EncryptorImpl::KeyInterface"></a>typedef <a class="el" href="class_d_l___public_key.html">DL_PublicKey</a>< SCHEME_OPTIONS::Element > </td><td class="memItemRight" valign=bottom><b>KeyInterface</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="_d_l___object_implb0" doxytag="DL_EncryptorImpl::GetSignatureAlgorithm"></a>const <a class="el" href="class_d_l___elgamal_like_signature_algorithm.html">DL_ElgamalLikeSignatureAlgorithm</a><<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetSignatureAlgorithm</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___object_implb1" doxytag="DL_EncryptorImpl::GetKeyAgreementAlgorithm"></a>const <a class="el" href="class_d_l___key_agreement_algorithm.html">DL_KeyAgreementAlgorithm</a><<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetKeyAgreementAlgorithm</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___object_implb2" doxytag="DL_EncryptorImpl::GetKeyDerivationAlgorithm"></a>const <a class="el" href="class_d_l___key_derivation_algorithm.html">DL_KeyDerivationAlgorithm</a><<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetKeyDerivationAlgorithm</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___object_implb3" doxytag="DL_EncryptorImpl::GetSymmetricEncryptionAlgorithm"></a>const <a class="el" href="class_d_l___symmetric_encryption_algorithm.html">DL_SymmetricEncryptionAlgorithm</a> & </td><td class="memItemRight" valign=bottom><b>GetSymmetricEncryptionAlgorithm</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_implb3" doxytag="DL_EncryptorImpl::AccessKeyInterface"></a><a class="el" href="class_d_l___encryptor_base.html">DL_EncryptorBase</a>< SCHEME_OPTIONS::Element <br>>::KeyInterface & </td><td class="memItemRight" valign=bottom><b>AccessKeyInterface</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_el_gamal_object_implb4" doxytag="DL_EncryptorImpl::GetKeyInterface"></a>const <a class="el" href="class_d_l___encryptor_base.html">DL_EncryptorBase</a>< SCHEME_OPTIONS::Element <br>>::KeyInterface & </td><td class="memItemRight" valign=bottom><b>GetKeyInterface</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___crypto_system_baseb3" doxytag="DL_EncryptorImpl::GetAbstractGroupParameters"></a>const <a class="el" href="class_d_l___group_parameters.html">DL_GroupParameters</a><<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetAbstractGroupParameters</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___crypto_system_baseb4" doxytag="DL_EncryptorImpl::AccessAbstractGroupParameters"></a><a class="el" href="class_d_l___group_parameters.html">DL_GroupParameters</a>< Element > & </td><td class="memItemRight" valign=bottom><b>AccessAbstractGroupParameters</b> ()</td></tr></table><hr><h2>Member Function Documentation</h2><a name="_d_l___encryptor_basea0" doxytag="DL_EncryptorImpl::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 <a class="el" href="class_d_l___encryptor_base.html">DL_EncryptorBase</a>< SCHEME_OPTIONS::Element , <a class="el" href="class_p_k___encryptor.html">PK_Encryptor</a> >::Encrypt </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> & </td> <td class="mdname" nowrap> <em>rng</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const byte * </td> <td class="mdname" nowrap> <em>plainText</em>, </td> </tr> <tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -