📄 class_e_s_i_g_n_function.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>Crypto++: ESIGNFunction Class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.2 --><div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul></div><h1>ESIGNFunction Class Reference</h1><!-- doxytag: class="ESIGNFunction" --><!-- doxytag: inherits="TrapdoorFunction,ASN1CryptoMaterial< PublicKey >" --><code>#include <<a class="el" href="esign_8h-source.html">esign.h</a>></code><p><p>Inheritance diagram for ESIGNFunction:<p><center><img src="class_e_s_i_g_n_function.png" usemap="#ESIGNFunction_map" border="0" alt=""></center><map name="ESIGNFunction_map"><area href="class_trapdoor_function.html" alt="TrapdoorFunction" shape="rect" coords="0,168,210,192"><area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< PublicKey >" shape="rect" coords="330,168,540,192"><area href="class_randomized_trapdoor_function.html" alt="RandomizedTrapdoorFunction" shape="rect" coords="0,112,210,136"><area href="class_a_s_n1_object.html" alt="ASN1Object" shape="rect" coords="220,112,430,136"><area href="class_public_key.html" alt="PublicKey" shape="rect" coords="440,112,650,136"><area href="class_trapdoor_function_bounds.html" alt="TrapdoorFunctionBounds" shape="rect" coords="0,56,210,80"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="440,56,650,80"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="440,0,650,24"><area href="class_invertible_e_s_i_g_n_function.html" alt="InvertibleESIGNFunction" shape="rect" coords="165,280,375,304"></map><a href="class_e_s_i_g_n_function-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="esign_8h-source.html#l00016">16</a> of file <a class="el" href="esign_8h-source.html">esign.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"><a class="anchor" name="8517acbd8209e7eeb56138d0ab616265"></a><!-- doxytag: member="ESIGNFunction::Initialize" ref="8517acbd8209e7eeb56138d0ab616265" args="(const Integer &n, const Integer &e)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#8517acbd8209e7eeb56138d0ab616265">Initialize</a> (const <a class="el" href="class_integer.html">Integer</a> &n, const <a class="el" href="class_integer.html">Integer</a> &e)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6517cb00d59eb584c9ecf86d3dce6742"></a><!-- doxytag: member="ESIGNFunction::BERDecode" ref="6517cb00d59eb584c9ecf86d3dce6742" args="(BufferedTransformation &bt)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#6517cb00d59eb584c9ecf86d3dce6742">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">decode this object from a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using BER (Basic Encoding Rules) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="524f9708759975ed9a9481ee94b9eb08"></a><!-- doxytag: member="ESIGNFunction::DEREncode" ref="524f9708759975ed9a9481ee94b9eb08" args="(BufferedTransformation &bt) const " -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#524f9708759975ed9a9481ee94b9eb08">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">encode this object into a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using DER (Distinguished Encoding Rules) <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#cc185d24c97a74543a6e5820219282bd">Validate</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int level) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">check this object for errors <a href="#cc185d24c97a74543a6e5820219282bd"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="53def4f94e81acd0e02a3e50fb9b15ee"></a><!-- doxytag: member="ESIGNFunction::GetVoidValue" ref="53def4f94e81acd0e02a3e50fb9b15ee" args="(const char *name, const std::type_info &valueType, void *pValue) const " -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#53def4f94e81acd0e02a3e50fb9b15ee">GetVoidValue</a> (const char *name, const std::type_info &valueType, void *pValue) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">to be implemented by derived classes, users should use one of the above functions instead <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#1ff8229ed7786a13a69d15e5a64e4d21">AssignFrom</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &source)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">assign values from source to this object <a href="#1ff8229ed7786a13a69d15e5a64e4d21"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4f97965d2ec6ac022f4d801d1a049905"></a><!-- doxytag: member="ESIGNFunction::ApplyFunction" ref="4f97965d2ec6ac022f4d801d1a049905" args="(const Integer &x) const " --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#4f97965d2ec6ac022f4d801d1a049905">ApplyFunction</a> (const <a class="el" href="class_integer.html">Integer</a> &x) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d46257e98886e62e0fcb64a77c30053"></a><!-- doxytag: member="ESIGNFunction::PreimageBound" ref="4d46257e98886e62e0fcb64a77c30053" args="() const" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#4d46257e98886e62e0fcb64a77c30053">PreimageBound</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5c6b63f6c16a17dcd4a5922924bf3d9"></a><!-- doxytag: member="ESIGNFunction::ImageBound" ref="a5c6b63f6c16a17dcd4a5922924bf3d9" args="() const" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#a5c6b63f6c16a17dcd4a5922924bf3d9">ImageBound</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d86884eff23fbec3b0121e0758446dff"></a><!-- doxytag: member="ESIGNFunction::GetModulus" ref="d86884eff23fbec3b0121e0758446dff" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#d86884eff23fbec3b0121e0758446dff">GetModulus</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f592c925439dbda940be69f4cdaf8a5a"></a><!-- doxytag: member="ESIGNFunction::GetPublicExponent" ref="f592c925439dbda940be69f4cdaf8a5a" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#f592c925439dbda940be69f4cdaf8a5a">GetPublicExponent</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5bf2c387bd0724b15af1b0eba8429875"></a><!-- doxytag: member="ESIGNFunction::SetModulus" ref="5bf2c387bd0724b15af1b0eba8429875" args="(const Integer &n)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#5bf2c387bd0724b15af1b0eba8429875">SetModulus</a> (const <a class="el" href="class_integer.html">Integer</a> &n)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c3a6be0267445a7b6eee4655b67568d"></a><!-- doxytag: member="ESIGNFunction::SetPublicExponent" ref="5c3a6be0267445a7b6eee4655b67568d" args="(const Integer &e)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_s_i_g_n_function.html#5c3a6be0267445a7b6eee4655b67568d">SetPublicExponent</a> (const <a class="el" href="class_integer.html">Integer</a> &e)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="132d71605a286f12b5167a0c3f18ffdf"></a><!-- doxytag: member="ESIGNFunction::ApplyRandomizedFunction" ref="132d71605a286f12b5167a0c3f18ffdf" args="(RandomNumberGenerator &rng, const Integer &x) const " --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_trapdoor_function.html#132d71605a286f12b5167a0c3f18ffdf">ApplyRandomizedFunction</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, const <a class="el" href="class_integer.html">Integer</a> &x) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="253eb5db8020326f869a4580e21bf5d8"></a><!-- doxytag: member="ESIGNFunction::IsRandomized" ref="253eb5db8020326f869a4580e21bf5d8" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_trapdoor_function.html#253eb5db8020326f869a4580e21bf5d8">IsRandomized</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b85b47c9c3df4cf1030eff786ab11d5b"></a><!-- doxytag: member="ESIGNFunction::MaxPreimage" ref="b85b47c9c3df4cf1030eff786ab11d5b" args="() const" -->virtual <a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_trapdoor_function_bounds.html#b85b47c9c3df4cf1030eff786ab11d5b">MaxPreimage</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b505cf1a3494645998e7e0872b76a72"></a><!-- doxytag: member="ESIGNFunction::MaxImage" ref="9b505cf1a3494645998e7e0872b76a72" args="() const" -->virtual <a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_trapdoor_function_bounds.html#9b505cf1a3494645998e7e0872b76a72">MaxImage</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8092ce7a774430f54c70632812ce3399"></a><!-- doxytag: member="ESIGNFunction::Save" ref="8092ce7a774430f54c70632812ce3399" args="(BufferedTransformation &bt) const " -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_crypto_material.html#8092ce7a774430f54c70632812ce3399">Save</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">save key into a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a> <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_crypto_material.html#23d34a094f5765a1cf51f22ae1233f66">Load</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">load key from a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a> <a href="#23d34a094f5765a1cf51f22ae1233f66"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_object.html#b8446b61690a19015d3d565d86dd1d3d">BEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">encode this object into a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using BER <a href="#b8446b61690a19015d3d565d86dd1d3d"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="edb65ba5323f7bb41fc57973566d20cd"></a><!-- doxytag: member="ESIGNFunction::ThrowIfInvalid" ref="edb65ba5323f7bb41fc57973566d20cd" args="(RandomNumberGenerator &rng, unsigned int level) const" -->virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#edb65ba5323f7bb41fc57973566d20cd">ThrowIfInvalid</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int level) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">throws <a class="el" href="class_crypto_material_1_1_invalid_material.html" title="exception thrown when invalid crypto material is detected">InvalidMaterial</a> if this object fails <a class="el" href="class_crypto_material.html#439743c6b4e89ca8228a12fa1ea43ab1" title="check this object for errors">Validate()</a> test <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="35720c07870fcda4ae39148f8524274e"></a><!-- doxytag: member="ESIGNFunction::SupportsPrecomputation" ref="35720c07870fcda4ae39148f8524274e" args="() const" -->virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#35720c07870fcda4ae39148f8524274e">SupportsPrecomputation</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight"><dl class="return" compact><dt><b>Returns:</b></dt><dd>whether this object supports precomputation </dd></dl><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#39e512d2ea70d0e967db98c19994a7fd">Precompute</a> (unsigned int n)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">do precomputation <a href="#39e512d2ea70d0e967db98c19994a7fd"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2911ebd9a28efa43dab71e5c12e2c90d"></a><!-- doxytag: member="ESIGNFunction::LoadPrecomputation" ref="2911ebd9a28efa43dab71e5c12e2c90d" args="(BufferedTransformation &storedPrecomputation)" -->virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#2911ebd9a28efa43dab71e5c12e2c90d">LoadPrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &storedPrecomputation)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">retrieve previously saved precomputation <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="839d0f7f3e256b625caf6fd792925ad4"></a><!-- doxytag: member="ESIGNFunction::SavePrecomputation" ref="839d0f7f3e256b625caf6fd792925ad4" args="(BufferedTransformation &storedPrecomputation) const " -->virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#839d0f7f3e256b625caf6fd792925ad4">SavePrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &storedPrecomputation) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">save precomputation for later use <br></td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -