class_d_l___group_parameters___e_c.html
来自「Crypto++是一个非常强大的密码学库,主要是功能全」· HTML 代码 · 共 568 行 · 第 1/3 页
HTML
568 行
<!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_GroupParameters_EC< EC > 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_GroupParameters_EC< EC > Class Template Reference</h1><code>#include <<a class="el" href="eccrypto_8h-source.html">eccrypto.h</a>></code><p><p>Inheritance diagram for DL_GroupParameters_EC< EC >:<p><center><img src="class_d_l___group_parameters___e_c.png" usemap="#DL_GroupParameters_EC< EC >_map" border="0" alt=""></center><map name="DL_GroupParameters_EC< EC >_map"><area href="class_d_l___group_parameters_impl.html" alt="DL_GroupParametersImpl< EcPrecomputation< EC > >" shape="rect" coords="0,280,405,304"><area href="class_d_l___group_parameters.html" alt="DL_GroupParameters< typenameEcPrecomputation< EC >::Element >" shape="rect" coords="0,224,405,248"><area href="class_crypto_parameters.html" alt="CryptoParameters" shape="rect" coords="0,168,405,192"><area href="class_generatable_crypto_material.html" alt="GeneratableCryptoMaterial" shape="rect" coords="0,112,405,136"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="0,56,405,80"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="0,0,405,24"></map><a href="class_d_l___group_parameters___e_c-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2><h3>template<class EC><br> class DL_GroupParameters_EC< EC ></h3>Elliptic Curve Parameters. <p>This class corresponds to the ASN.1 sequence of the same name in ANSI X9.62 (also SEC 1). <p><p>Definition at line <a class="el" href="eccrypto_8h-source.html#l00025">25</a> of file <a class="el" href="eccrypto_8h-source.html">eccrypto.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___group_parameters___e_cw0" doxytag="DL_GroupParameters_EC::EllipticCurve"></a>typedef EC </td><td class="memItemRight" valign=bottom><b>EllipticCurve</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cw1" doxytag="DL_GroupParameters_EC::Point"></a>typedef EllipticCurve::Point </td><td class="memItemRight" valign=bottom><b>Point</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cw2" doxytag="DL_GroupParameters_EC::Element"></a>typedef Point </td><td class="memItemRight" valign=bottom><b>Element</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_cw3" doxytag="DL_GroupParameters_EC::DefaultCofactorOption"></a>typedef IncompatibleCofactorMultiplication </td><td class="memItemRight" valign=bottom><b>DefaultCofactorOption</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_implw0" doxytag="DL_GroupParameters_EC::GroupPrecomputation"></a>typedef EcPrecomputation< EC > </td><td class="memItemRight" valign=bottom><b>GroupPrecomputation</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_implw2" doxytag="DL_GroupParameters_EC::BasePrecomputation"></a>typedef DL_FixedBasePrecomputationImpl<<br> typenameEcPrecomputation<<br> EC >::Element > </td><td class="memItemRight" valign=bottom><b>BasePrecomputation</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___group_parameters___e_ca1" doxytag="DL_GroupParameters_EC::DL_GroupParameters_EC"></a> </td><td class="memItemRight" valign=bottom><b>DL_GroupParameters_EC</b> (const <a class="el" href="class_o_i_d.html">OID</a> &oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca2" doxytag="DL_GroupParameters_EC::DL_GroupParameters_EC"></a> </td><td class="memItemRight" valign=bottom><b>DL_GroupParameters_EC</b> (const EllipticCurve &ec, const Point &G, const <a class="el" href="class_integer.html">Integer</a> &n, const <a class="el" href="class_integer.html">Integer</a> &k=Integer::Zero())</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca3" doxytag="DL_GroupParameters_EC::DL_GroupParameters_EC"></a> </td><td class="memItemRight" valign=bottom><b>DL_GroupParameters_EC</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca4" doxytag="DL_GroupParameters_EC::Initialize"></a>void </td><td class="memItemRight" valign=bottom><b>Initialize</b> (const EllipticCurve &ec, const Point &G, const <a class="el" href="class_integer.html">Integer</a> &n, const <a class="el" href="class_integer.html">Integer</a> &k=Integer::Zero())</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca5" doxytag="DL_GroupParameters_EC::Initialize"></a>void </td><td class="memItemRight" valign=bottom><b>Initialize</b> (const <a class="el" href="class_o_i_d.html">OID</a> &oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca6" doxytag="DL_GroupParameters_EC::GetVoidValue"></a>bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parameters___e_ca6">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parameters___e_ca7">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 </em> <a href="#_d_l___group_parameters___e_ca7"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parameters___e_ca8">GenerateRandom</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &alg)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">this implementation doesn't actually generate a curve, it just initializes the parameters with existing values </em> <a href="#_d_l___group_parameters___e_ca8"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca9" doxytag="DL_GroupParameters_EC::GetBasePrecomputation"></a>const DL_FixedBasePrecomputation<<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetBasePrecomputation</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca10" doxytag="DL_GroupParameters_EC::AccessBasePrecomputation"></a>DL_FixedBasePrecomputation<<br> Element > & </td><td class="memItemRight" valign=bottom><b>AccessBasePrecomputation</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca11" doxytag="DL_GroupParameters_EC::GetSubgroupOrder"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>GetSubgroupOrder</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca12" doxytag="DL_GroupParameters_EC::GetCofactor"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>GetCofactor</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca13" doxytag="DL_GroupParameters_EC::ValidateGroup"></a>bool </td><td class="memItemRight" valign=bottom><b>ValidateGroup</b> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int level) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca14" doxytag="DL_GroupParameters_EC::ValidateElement"></a>bool </td><td class="memItemRight" valign=bottom><b>ValidateElement</b> (unsigned int level, const Element &element, const DL_FixedBasePrecomputation< Element > *precomp) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca15" doxytag="DL_GroupParameters_EC::FastSubgroupCheckAvailable"></a>bool </td><td class="memItemRight" valign=bottom><b>FastSubgroupCheckAvailable</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca16" doxytag="DL_GroupParameters_EC::EncodeElement"></a>void </td><td class="memItemRight" valign=bottom><b>EncodeElement</b> (bool reversible, const Element &element, byte *encoded) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca17" doxytag="DL_GroupParameters_EC::GetEncodedElementSize"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>GetEncodedElementSize</b> (bool reversible) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca18" doxytag="DL_GroupParameters_EC::DecodeElement"></a>Element </td><td class="memItemRight" valign=bottom><b>DecodeElement</b> (const byte *encoded, bool checkForGroupMembership) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca19" doxytag="DL_GroupParameters_EC::ConvertElementToInteger"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>ConvertElementToInteger</b> (const Element &element) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca20" doxytag="DL_GroupParameters_EC::GetMaxExponent"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>GetMaxExponent</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca21" doxytag="DL_GroupParameters_EC::IsIdentity"></a>bool </td><td class="memItemRight" valign=bottom><b>IsIdentity</b> (const Element &element) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca22" doxytag="DL_GroupParameters_EC::SimultaneousExponentiate"></a>void </td><td class="memItemRight" valign=bottom><b>SimultaneousExponentiate</b> (Element *results, const Element &base, const <a class="el" href="class_integer.html">Integer</a> *exponents, unsigned int exponentsCount) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca23" doxytag="DL_GroupParameters_EC::GetAlgorithmID"></a><a class="el" href="class_o_i_d.html">OID</a> </td><td class="memItemRight" valign=bottom><b>GetAlgorithmID</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca24" doxytag="DL_GroupParameters_EC::MultiplyElements"></a>Element </td><td class="memItemRight" valign=bottom><b>MultiplyElements</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca25" doxytag="DL_GroupParameters_EC::CascadeExponentiate"></a>Element </td><td class="memItemRight" valign=bottom><b>CascadeExponentiate</b> (const Element &element1, const <a class="el" href="class_integer.html">Integer</a> &exponent1, const Element &element2, const <a class="el" href="class_integer.html">Integer</a> &exponent2) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca26" doxytag="DL_GroupParameters_EC::BERDecode"></a>void </td><td class="memItemRight" valign=bottom><b>BERDecode</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca27" doxytag="DL_GroupParameters_EC::DEREncode"></a>void </td><td class="memItemRight" valign=bottom><b>DEREncode</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca28" doxytag="DL_GroupParameters_EC::SetPointCompression"></a>void </td><td class="memItemRight" valign=bottom><b>SetPointCompression</b> (bool compress)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca29" doxytag="DL_GroupParameters_EC::GetPointCompression"></a>bool </td><td class="memItemRight" valign=bottom><b>GetPointCompression</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca30" doxytag="DL_GroupParameters_EC::SetEncodeAsOID"></a>void </td><td class="memItemRight" valign=bottom><b>SetEncodeAsOID</b> (bool encodeAsOID)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca31" doxytag="DL_GroupParameters_EC::GetEncodeAsOID"></a>bool </td><td class="memItemRight" valign=bottom><b>GetEncodeAsOID</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca32" doxytag="DL_GroupParameters_EC::GetCurve"></a>const EllipticCurve & </td><td class="memItemRight" valign=bottom><b>GetCurve</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters___e_ca33" doxytag="DL_GroupParameters_EC::operator=="></a>bool </td><td class="memItemRight" valign=bottom><b>operator==</b> (const <a class="el" href="class_d_l___group_parameters___e_c.html">ThisClass</a> &rhs) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_impla0" doxytag="DL_GroupParameters_EC::GetGroupPrecomputation"></a>const DL_GroupPrecomputation<<br> Element > & </td><td class="memItemRight" valign=bottom><b>GetGroupPrecomputation</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_impla3" doxytag="DL_GroupParameters_EC::operator=="></a>bool </td><td class="memItemRight" valign=bottom><b>operator==</b> (const <a class="el" href="class_d_l___group_parameters_impl.html">DL_GroupParametersImpl</a>< EcPrecomputation< EC >, DL_FixedBasePrecomputationImpl< typenameEcPrecomputation< EC >::Element >, <a class="el" href="class_d_l___group_parameters.html">DL_GroupParameters</a>< typenameEcPrecomputation< EC >::Element > > &rhs) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parametersa1">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 </em> <a href="#_d_l___group_parametersa1"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa3" doxytag="DL_GroupParameters_EC::SupportsPrecomputation"></a>bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parametersa3">SupportsPrecomputation</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight"><dl compact><dt><b>Returns:</b></dt><dd>whether this object supports precomputation </dd></dl><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parametersa4">Precompute</a> (unsigned int precomputationStorage=16)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">do precomputation </em> <a href="#_d_l___group_parametersa4"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa5" doxytag="DL_GroupParameters_EC::LoadPrecomputation"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parametersa5">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa6" doxytag="DL_GroupParameters_EC::SavePrecomputation"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___e_c.html#_d_l___group_parametersa6">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><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa7" doxytag="DL_GroupParameters_EC::GetSubgroupGenerator"></a>virtual const Element & </td><td class="memItemRight" valign=bottom><b>GetSubgroupGenerator</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa8" doxytag="DL_GroupParameters_EC::SetSubgroupGenerator"></a>virtual void </td><td class="memItemRight" valign=bottom><b>SetSubgroupGenerator</b> (const Element &base)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa9" doxytag="DL_GroupParameters_EC::ExponentiateBase"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>ExponentiateBase</b> (const <a class="el" href="class_integer.html">Integer</a> &exponent) const</td></tr>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?