class_d_l___group_parameters___e_c.html

来自「Crypto++是一个非常强大的密码学库,主要是功能全」· HTML 代码 · 共 568 行 · 第 1/3 页

HTML
568
字号
<tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa10" doxytag="DL_GroupParameters_EC::ExponentiateElement"></a>virtual Element&nbsp;</td><td class="memItemRight" valign=bottom><b>ExponentiateElement</b> (const Element &amp;base, const <a class="el" href="class_integer.html">Integer</a> &amp;exponent) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa16" doxytag="DL_GroupParameters_EC::GetGroupOrder"></a>virtual <a class="el" href="class_integer.html">Integer</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>GetGroupOrder</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha28" doxytag="DL_GroupParameters_EC::GenerateRandomWithKeySize"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha28">GenerateRandomWithKeySize</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int keySize)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calls the above function with a <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> object that just specifies "KeySize" <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha29" doxytag="DL_GroupParameters_EC::ThrowIfInvalid"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha29">ThrowIfInvalid</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int level) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">throws <a class="el" href="class_crypto_material_1_1_invalid_material.html">InvalidMaterial</a> if this object fails <a class="el" href="class_crypto_material.html#_x509_public_keya12">Validate()</a> test <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha30" doxytag="DL_GroupParameters_EC::Save"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha30">Save</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">save key into a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> <br><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_d_l___group_parameters___e_c.html#_x_t_r___d_ha31">Load</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">load key from a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> </em> <a href="#_x_t_r___d_ha31"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha36" doxytag="DL_GroupParameters_EC::DoQuickSanityCheck"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>DoQuickSanityCheck</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha37" doxytag="DL_GroupParameters_EC::GetThisObject"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha37">GetThisObject</a> (T &amp;object) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a copy of this object or a subobject of it <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha38" doxytag="DL_GroupParameters_EC::GetThisPointer"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha38">GetThisPointer</a> (T *&amp;p) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a pointer to this object, as a pointer to T <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha39" doxytag="DL_GroupParameters_EC::GetValue"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha39">GetValue</a> (const char *name, T &amp;value) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value, returns true if the name exists <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha40" doxytag="DL_GroupParameters_EC::GetValueWithDefault"></a>template&lt;class T&gt; T&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha40">GetValueWithDefault</a> (const char *name, T defaultValue) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value, returns the default if the name doesn't exist <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha41" doxytag="DL_GroupParameters_EC::GetValueNames"></a>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha41">GetValueNames</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a list of value names that can be retrieved <br><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_d_l___group_parameters___e_c.html#_x_t_r___d_ha42">GetIntValue</a> (const char *name, int &amp;value) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value with type int </em> <a href="#_x_t_r___d_ha42"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha43" doxytag="DL_GroupParameters_EC::GetIntValueWithDefault"></a>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_ha43">GetIntValueWithDefault</a> (const char *name, int defaultValue) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value with type int, with default <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha44" doxytag="DL_GroupParameters_EC::GetRequiredParameter"></a>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><b>GetRequiredParameter</b> (const char *className, const char *name, T &amp;value) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha45" doxytag="DL_GroupParameters_EC::GetRequiredIntParameter"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>GetRequiredIntParameter</b> (const char *className, const char *name, int &amp;value) const</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 name="_d_l___group_parameters___e_ce0" doxytag="DL_GroupParameters_EC::GetNextRecommendedParametersOID"></a><a class="el" href="class_o_i_d.html">OID</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>GetNextRecommendedParametersOID</b> (const <a class="el" href="class_o_i_d.html">OID</a> &amp;oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_he0" doxytag="DL_GroupParameters_EC::ThrowIfTypeMismatch"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_x_t_r___d_he0">ThrowIfTypeMismatch</a> (const char *name, const std::type_info &amp;stored, const std::type_info &amp;retrieving)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by derived classes to check for type mismatch <br><br></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___group_parameters___e_cb0" doxytag="DL_GroupParameters_EC::FieldElementLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>FieldElementLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cb1" doxytag="DL_GroupParameters_EC::ExponentLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><b>ExponentLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersb0" doxytag="DL_GroupParameters_EC::ParametersChanged"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>ParametersChanged</b> ()</td></tr><tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cp0" doxytag="DL_GroupParameters_EC::m_oid"></a><a class="el" href="class_o_i_d.html">OID</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>m_oid</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cp1" doxytag="DL_GroupParameters_EC::m_n"></a><a class="el" href="class_integer.html">Integer</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>m_n</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cp2" doxytag="DL_GroupParameters_EC::m_compress"></a>bool&nbsp;</td><td class="memItemRight" valign=bottom><b>m_compress</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cp3" doxytag="DL_GroupParameters_EC::m_encodeAsOID"></a>bool&nbsp;</td><td class="memItemRight" valign=bottom><b>m_encodeAsOID</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cp4" doxytag="DL_GroupParameters_EC::m_k"></a><a class="el" href="class_integer.html">Integer</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>m_k</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_implp0" doxytag="DL_GroupParameters_EC::m_groupPrecomputation"></a>EcPrecomputation&lt; EC &gt;&nbsp;</td><td class="memItemRight" valign=bottom><b>m_groupPrecomputation</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_implp1" doxytag="DL_GroupParameters_EC::m_gpc"></a>DL_FixedBasePrecomputationImpl&lt;<br> typenameEcPrecomputation&lt;<br> EC &gt;::Element &gt;&nbsp;</td><td class="memItemRight" valign=bottom><b>m_gpc</b></td></tr></table><hr><h2>Member Function Documentation</h2><a name="_d_l___group_parameters___e_ca7" doxytag="DL_GroupParameters_EC::AssignFrom"></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" colspan="4">template&lt;class EC&gt; </td>        </tr>        <tr>          <td class="md" nowrap valign="top"> void <a class="el" href="class_d_l___group_parameters___e_c.html">DL_GroupParameters_EC</a>&lt; EC &gt;::AssignFrom </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;&nbsp;</td>          <td class="mdname1" valign="top" nowrap> <em>source</em>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap><code> [virtual]</code></td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>assign values from source to this object <p><dl compact><dt><b>Note:</b></dt><dd>This function can be used to create a public key from a private key. </dd></dl><p>Implements <a class="el" href="class_crypto_material.html#_x509_public_keya11">CryptoMaterial</a>.<p>Definition at line <a class="el" href="eccrypto_8cpp-source.html#l00409">409</a> of file <a class="el" href="eccrypto_8cpp-source.html">eccrypto.cpp</a>.<p>References <a class="el" href="cryptlib_8h-source.html#l00287">NameValuePairs::GetRequiredParameter()</a>, <a class="el" href="cryptlib_8h-source.html#l00255">NameValuePairs::GetValue()</a>, <a class="el" href="cryptlib_8h-source.html#l00262">NameValuePairs::GetValueWithDefault()</a>, and <a class="el" href="integer_8cpp-source.html#l02610">Integer::Zero()</a>.<p>Referenced by <a class="el" href="eccrypto_8cpp-source.html#l00430">DL_GroupParameters_EC&lt; EC &gt;::GenerateRandom()</a>.    </td>  </tr></table><a name="_d_l___group_parameters___e_ca8" doxytag="DL_GroupParameters_EC::GenerateRandom"></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" colspan="4">template&lt;class EC&gt; </td>        </tr>        <tr>          <td class="md" nowrap valign="top"> void <a class="el" href="class_d_l___group_parameters___e_c.html">DL_GroupParameters_EC</a>&lt; EC &gt;::GenerateRandom </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 <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;&nbsp;</td>          <td class="mdname" nowrap> <em>alg</em></td>        </tr>        <tr>          <td></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"><code> [virtual]</code></td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>this implementation doesn't actually generate a curve, it just initializes the parameters with existing values <p>parameters: (Curve, SubgroupGenerator, SubgroupOrder, Cofactor (optional)), or (GroupOID) <p>Reimplemented from <a class="el" href="class_generatable_crypto_material.html#_x_t_r___d_ha27">GeneratableCryptoMaterial</a>.<p>

⌨️ 快捷键说明

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