📄 class_d_l___group_parameters___l_u_c___default_safe_prime.html
字号:
<tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_impl_3_01_mod_exp_precomputation_00_01_d_l___fixed_base_precomputation_impl_3_01typename_mod_exp_precomputation_1_1_element_01_4_00_01_d_l___group_parameters___integer_based_01_4a27" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::SetSubgroupOrder"></a>void </td><td class="memItemRight" valign=bottom><b>SetSubgroupOrder</b> (const <a class="el" href="class_integer.html">Integer</a> &q)</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___l_u_c___default_safe_prime.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_LUC_DefaultSafePrime::SupportsPrecomputation"></a>bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.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___l_u_c___default_safe_prime.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_LUC_DefaultSafePrime::LoadPrecomputation"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.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_LUC_DefaultSafePrime::SavePrecomputation"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.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_LUC_DefaultSafePrime::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_LUC_DefaultSafePrime::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_LUC_DefaultSafePrime::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><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa10" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::ExponentiateElement"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>ExponentiateElement</b> (const Element &base, const <a class="el" href="class_integer.html">Integer</a> &exponent) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersa17" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::GetCofactor"></a>virtual <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="_x_t_r___d_ha28" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::GenerateRandomWithKeySize"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha28">GenerateRandomWithKeySize</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int keySize)</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::ThrowIfInvalid"></a>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha29">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">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_LUC_DefaultSafePrime::Save"></a>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha30">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">BufferedTransformation</a> <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya8" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::Save"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x509_public_keya8">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">BufferedTransformation</a> <br><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_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha31">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">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>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x509_public_keya9">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">BufferedTransformation</a> </em> <a href="#_x509_public_keya9"></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_LUC_DefaultSafePrime::DoQuickSanityCheck"></a>void </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_LUC_DefaultSafePrime::GetThisObject"></a>template<class T> bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha37">GetThisObject</a> (T &object) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetThisPointer"></a>template<class T> bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha38">GetThisPointer</a> (T *&p) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetValue"></a>template<class T> bool </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha39">GetValue</a> (const char *name, T &value) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetValueWithDefault"></a>template<class T> T </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha40">GetValueWithDefault</a> (const char *name, T defaultValue) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetValueNames"></a>std::string </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha41">GetValueNames</a> () const</td></tr><tr><td class="mdescLeft"> </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 </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha42">GetIntValue</a> (const char *name, int &value) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetIntValueWithDefault"></a>int </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_ha43">GetIntValueWithDefault</a> (const char *name, int defaultValue) const</td></tr><tr><td class="mdescLeft"> </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_LUC_DefaultSafePrime::GetRequiredParameter"></a>template<class T> void </td><td class="memItemRight" valign=bottom><b>GetRequiredParameter</b> (const char *className, const char *name, T &value) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha45" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::GetRequiredIntParameter"></a>void </td><td class="memItemRight" valign=bottom><b>GetRequiredIntParameter</b> (const char *className, const char *name, int &value) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x509_public_keya10">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">BufferedTransformation</a>, using BER </em> <a href="#_x509_public_keya10"></a><em><br><br></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="_x_t_r___d_he0" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::ThrowIfTypeMismatch"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_d_l___group_parameters___l_u_c___default_safe_prime.html#_x_t_r___d_he0">ThrowIfTypeMismatch</a> (const char *name, const std::type_info &stored, const std::type_info &retrieving)</td></tr><tr><td class="mdescLeft"> </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___l_u_c___default_safe_primeb0" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::GetDefaultSubgroupOrderSize"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>GetDefaultSubgroupOrderSize</b> (unsigned int modulusSize) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parameters_impl_3_01_mod_exp_precomputation_00_01_d_l___fixed_base_precomputation_impl_3_01typename_mod_exp_precomputation_1_1_element_01_4_00_01_d_l___group_parameters___integer_based_01_4b0" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::ComputeGroupOrder"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>ComputeGroupOrder</b> (const <a class="el" href="class_integer.html">Integer</a> &modulus) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_d_l___group_parametersb0" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::ParametersChanged"></a>void </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_implp0" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::m_groupPrecomputation"></a>DL_GroupPrecomputation_LUC </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_LUC_DefaultSafePrime::m_gpc"></a><a class="el" href="class_d_l___base_precomputation___l_u_c.html">DL_BasePrecomputation_LUC</a> </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___integer_based_impla1" doxytag="DL_GroupParameters_LUC_DefaultSafePrime::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" nowrap valign="top"> void <a class="el" href="class_d_l___group_parameters___integer_based_impl.html">DL_GroupParameters_IntegerBasedImpl</a>< DL_GroupPrecomputation_LUC , <a class="el" href="class_d_l___base_precomputation___l_u_c.html">DL_BasePrecomputation_LUC</a> >::AssignFrom </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> & </td> <td class="mdname1" valign="top" nowrap> <em>source</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [inline, virtual, inherited]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </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>Reimplemented from <a class="el" href="class_d_l___group_parameters___integer_based.html#_d_l___group_parameters_impl_3_01_mod_exp_precomputation_00_01_d_l___fixed_base_precomputation_impl_3_01typename_mod_exp_precomputation_1_1_element_01_4_00_01_d_l___group_parameters___integer_based_01_4a12">DL_GroupParameters_IntegerBased</a>.<p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -