class_p_k_c_s8_private_key.html

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

HTML
460
字号
<!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++: PKCS8PrivateKey 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&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div><h1>PKCS8PrivateKey Class Reference</h1><code>#include &lt;<a class="el" href="asn_8h-source.html">asn.h</a>&gt;</code><p><p>Inheritance diagram for PKCS8PrivateKey:<p><center><img src="class_p_k_c_s8_private_key.png" usemap="#PKCS8PrivateKey_map" border="0" alt=""></center><map name="PKCS8PrivateKey_map"><area href="class_a_s_n1_key.html" alt="ASN1Key" shape="rect" coords="205,168,606,192"><area href="class_private_key.html" alt="PrivateKey" shape="rect" coords="822,168,1223,192"><area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial" shape="rect" coords="205,112,606,136"><area href="class_generatable_crypto_material.html" alt="GeneratableCryptoMaterial" shape="rect" coords="822,112,1223,136"><area href="class_a_s_n1_object.html" alt="ASN1Object" shape="rect" coords="0,56,401,80"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="411,56,812,80"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="822,56,1223,80"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="411,0,812,24"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="822,0,1223,24"><area href="class_d_l___key_impl.html" alt="DL_KeyImpl< PKCS8PrivateKey, DL_GroupParameters_EC< EC > >" shape="rect" coords="102,280,503,304"><area href="class_d_l___key_impl.html" alt="DL_KeyImpl< PKCS8PrivateKey, GP >" shape="rect" coords="513,280,914,304"><area href="class_invertible_r_s_a_function.html" alt="InvertibleRSAFunction" shape="rect" coords="924,280,1325,304"><area href="class_d_l___private_key_impl.html" alt="DL_PrivateKeyImpl< DL_GroupParameters_EC< EC > >" shape="rect" coords="102,336,503,360"><area href="class_d_l___private_key_impl.html" alt="DL_PrivateKeyImpl< GP >" shape="rect" coords="513,336,914,360"><area href="class_d_l___private_key___e_c.html" alt="DL_PrivateKey_EC< EC >" shape="rect" coords="102,392,503,416"><area href="class_d_l___private_key___g_f_p.html" alt="DL_PrivateKey_GFP< GP >" shape="rect" coords="513,392,914,416"></map><a href="class_p_k_c_s8_private_key-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="asn_8h-source.html#l00254">254</a> of file <a class="el" href="asn_8h-source.html">asn.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 name="_p_k_c_s8_private_keya0" doxytag="PKCS8PrivateKey::BERDecode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_p_k_c_s8_private_keya0">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">decode this object from a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a>, using BER (Basic Encoding Rules) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_p_k_c_s8_private_keya1" doxytag="PKCS8PrivateKey::DEREncode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_p_k_c_s8_private_keya1">DEREncode</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">encode this object into a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a>, using DER (Distinguished Encoding Rules) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_p_k_c_s8_private_keya2" doxytag="PKCS8PrivateKey::BERDecodeOptionalAttributes"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><b>BERDecodeOptionalAttributes</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_p_k_c_s8_private_keya3" doxytag="PKCS8PrivateKey::DEREncodeOptionalAttributes"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><b>DEREncodeOptionalAttributes</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya2" doxytag="PKCS8PrivateKey::GetAlgorithmID"></a>virtual <a class="el" href="class_o_i_d.html">OID</a>&nbsp;</td><td class="memItemRight" valign=bottom><b>GetAlgorithmID</b> () const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya3" doxytag="PKCS8PrivateKey::BERDecodeAlgorithmParameters"></a>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><b>BERDecodeAlgorithmParameters</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya4" doxytag="PKCS8PrivateKey::DEREncodeAlgorithmParameters"></a>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><b>DEREncodeAlgorithmParameters</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya5" doxytag="PKCS8PrivateKey::BERDecodeKey"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><b>BERDecodeKey</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya6" doxytag="PKCS8PrivateKey::BERDecodeKey2"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><b>BERDecodeKey2</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt, bool parametersPresent, unsigned int size)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya7" doxytag="PKCS8PrivateKey::DEREncodeKey"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><b>DEREncodeKey</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya8" doxytag="PKCS8PrivateKey::Save"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x509_public_keya8">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>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x509_public_keya9">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="#_x509_public_keya9"></a><em><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_p_k_c_s8_private_key.html#_x509_public_keya10">BEREncode</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">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 class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x509_public_keya11">AssignFrom</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;source)=0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">assign values from source to this object </em> <a href="#_x509_public_keya11"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x509_public_keya12">Validate</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int level) const=0</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">check this object for errors </em> <a href="#_x509_public_keya12"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha29" doxytag="PKCS8PrivateKey::ThrowIfInvalid"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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_ha32" doxytag="PKCS8PrivateKey::SupportsPrecomputation"></a>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x_t_r___d_ha32">SupportsPrecomputation</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</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>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x_t_r___d_ha33">Precompute</a> (unsigned int n)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">do precomputation </em> <a href="#_x_t_r___d_ha33"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha34" doxytag="PKCS8PrivateKey::LoadPrecomputation"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x_t_r___d_ha34">LoadPrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;storedPrecomputation)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">retrieve previously saved precomputation <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha35" doxytag="PKCS8PrivateKey::SavePrecomputation"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x_t_r___d_ha35">SavePrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;storedPrecomputation) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">save precomputation for later use <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha36" doxytag="PKCS8PrivateKey::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="PKCS8PrivateKey::GetThisObject"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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="PKCS8PrivateKey::GetThisPointer"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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="PKCS8PrivateKey::GetValue"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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="PKCS8PrivateKey::GetValueWithDefault"></a>template&lt;class T&gt; T&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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="PKCS8PrivateKey::GetValueNames"></a>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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_p_k_c_s8_private_key.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="PKCS8PrivateKey::GetIntValueWithDefault"></a>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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="PKCS8PrivateKey::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="PKCS8PrivateKey::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 class="memItemLeft" nowrap align=right valign=top><a name="_x509_public_keya28" doxytag="PKCS8PrivateKey::GetVoidValue"></a>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x509_public_keya28">GetVoidValue</a> (const char *name, const std::type_info &amp;valueType, void *pValue) const=0</td></tr><tr><td class="mdescLeft">&nbsp;</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>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.html#_x_t_r___d_ha27">GenerateRandom</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;params=<a class="el" href="cryptlib_8h.html#a3">g_nullNameValuePairs</a>)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">generate a random key or crypto parameters </em> <a href="#_x_t_r___d_ha27"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha28" doxytag="PKCS8PrivateKey::GenerateRandomWithKeySize"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_p_k_c_s8_private_key.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 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="PKCS8PrivateKey::ThrowIfTypeMismatch"></a>

⌨️ 快捷键说明

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