<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>Crypto++: PublicKey Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">Crypto++  <span id="projectnumber">7.0</span> </div> <div id="projectbrief">Free C++ class library of cryptographic schemes</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="class_public_key-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">PublicKey Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>Interface for public keys. <a href="class_public_key.html#details">More...</a></p> <div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for PublicKey:</div> <div id="dynsection-0-summary" class="dynsummary" style="display:block;"> </div> <div id="dynsection-0-content" class="dyncontent" style="display:none;"> <div class="center"> <img src="class_public_key.png" usemap="#PublicKey_map" alt=""/> <map id="PublicKey_map" name="PublicKey_map"> <area href="class_crypto_material.html" title="Interface for crypto material, such as public and private keys, and crypto parameters." alt="CryptoMaterial" shape="rect" coords="1584,56,1970,80"/> <area href="class_name_value_pairs.html" title="Interface for retrieving values given their names." alt="NameValuePairs" shape="rect" coords="1584,0,1970,24"/> <area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< PublicKey >" shape="rect" coords="495,168,881,192"/> <area href="class_l_u_c_function.html" title="The LUC function." alt="LUCFunction" shape="rect" coords="1386,168,1772,192"/> <area href="class_rabin_function.html" title="Rabin trapdoor function using the public key." alt="RabinFunction" shape="rect" coords="1782,168,2168,192"/> <area href="class_r_w_function.html" title="Rabin-Williams trapdoor function using the public key." alt="RWFunction" shape="rect" coords="2178,168,2564,192"/> <area href="class_e_s_i_g_n_function.html" title="ESIGN trapdoor function using the public key." alt="ESIGNFunction" shape="rect" coords="0,224,386,248"/> <area href="class_x509_public_key.html" title="Encodes and decodes subjectPublicKeyInfo." alt="X509PublicKey" shape="rect" coords="990,224,1376,248"/> <area href="class_invertible_l_u_c_function.html" title="The LUC inverse function." alt="InvertibleLUCFunction" shape="rect" coords="1386,224,1772,248"/> <area href="class_invertible_rabin_function.html" title="Rabin trapdoor function using the private key." alt="InvertibleRabinFunction" shape="rect" coords="1782,224,2168,248"/> <area href="class_invertible_r_w_function.html" title="Rabin-Williams trapdoor function using the private key." alt="InvertibleRWFunction" shape="rect" coords="2178,224,2564,248"/> <area href="class_invertible_e_s_i_g_n_function.html" title="ESIGN trapdoor function using the private key." alt="InvertibleESIGNFunction" shape="rect" coords="0,280,386,304"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< X509PublicKey, DL_GroupParameters_EC< EC > >" shape="rect" coords="396,280,782,304"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< X509PublicKey, GP >" shape="rect" coords="990,280,1376,304"/> <area href="class_r_s_a_function.html" title="RSA trapdoor function using the public key." alt="RSAFunction" shape="rect" coords="1584,280,1970,304"/> <area href="class_d_l___public_key_impl.html" alt="DL_PublicKeyImpl< DL_GroupParameters_EC< EC > >" shape="rect" coords="396,336,782,360"/> <area href="class_d_l___public_key_impl.html" title="Discrete Log (DL) public key base implementation." alt="DL_PublicKeyImpl< GP >" shape="rect" coords="990,336,1376,360"/> <area href="class_invertible_r_s_a_function.html" title="RSA trapdoor function using the private key." alt="InvertibleRSAFunction" shape="rect" coords="1386,336,1772,360"/> <area href="class_r_s_a_function___i_s_o.html" title="RSA trapdoor function using the public key." alt="RSAFunction_ISO" shape="rect" coords="1782,336,2168,360"/> <area href="class_d_l___public_key___e_c.html" title="Elliptic Curve Discrete Log (DL) public key." alt="DL_PublicKey_EC< EC >" shape="rect" coords="198,392,584,416"/> <area href="class_d_l___public_key___e_c_g_d_s_a.html" title="Elliptic Curve German DSA key for ISO/IEC 15946." alt="DL_PublicKey_ECGDSA< EC >" shape="rect" coords="594,392,980,416"/> <area href="class_d_l___public_key___g_f_p.html" title="Discrete Log (DL) public key in GF(p) groups." alt="DL_PublicKey_GFP< GP >" shape="rect" coords="990,392,1376,416"/> <area href="class_invertible_r_s_a_function___i_s_o.html" title="RSA trapdoor function using the private key." alt="InvertibleRSAFunction_ISO" shape="rect" coords="1386,392,1772,416"/> </map> </div></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> Additional Inherited Members</h2></td></tr> <tr class="inherit_header pub_methods_class_crypto_material"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_crypto_material')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_crypto_material.html">CryptoMaterial</a></td></tr> <tr class="memitem:a20181c1b39a74a9fe91385b025b773c6 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a20181c1b39a74a9fe91385b025b773c6">AssignFrom</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &source)=0</td></tr> <tr class="memdesc:a20181c1b39a74a9fe91385b025b773c6 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Assign values to this object. <a href="class_crypto_material.html#a20181c1b39a74a9fe91385b025b773c6">More...</a><br /></td></tr> <tr class="separator:a20181c1b39a74a9fe91385b025b773c6 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaa7d67d0c12712de0e33713c73f5b718 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#aaa7d67d0c12712de0e33713c73f5b718">Validate</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int level) const =0</td></tr> <tr class="memdesc:aaa7d67d0c12712de0e33713c73f5b718 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Check this object for errors. <a href="class_crypto_material.html#aaa7d67d0c12712de0e33713c73f5b718">More...</a><br /></td></tr> <tr class="separator:aaa7d67d0c12712de0e33713c73f5b718 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aedb65ba5323f7bb41fc57973566d20cd inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#aedb65ba5323f7bb41fc57973566d20cd">ThrowIfInvalid</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int level) const</td></tr> <tr class="memdesc:aedb65ba5323f7bb41fc57973566d20cd inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Check this object for errors. <a href="class_crypto_material.html#aedb65ba5323f7bb41fc57973566d20cd">More...</a><br /></td></tr> <tr class="separator:aedb65ba5323f7bb41fc57973566d20cd inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a12d0186a42abb68cfc3538c1fe3e3de4 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a12d0186a42abb68cfc3538c1fe3e3de4">Save</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const</td></tr> <tr class="memdesc:a12d0186a42abb68cfc3538c1fe3e3de4 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Saves a key to a <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a>. <a href="class_crypto_material.html#a12d0186a42abb68cfc3538c1fe3e3de4">More...</a><br /></td></tr> <tr class="separator:a12d0186a42abb68cfc3538c1fe3e3de4 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae7a94de4c3d3822070db5babbdf8b113 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#ae7a94de4c3d3822070db5babbdf8b113">Load</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr> <tr class="memdesc:ae7a94de4c3d3822070db5babbdf8b113 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Loads a key from a <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a>. <a href="class_crypto_material.html#ae7a94de4c3d3822070db5babbdf8b113">More...</a><br /></td></tr> <tr class="separator:ae7a94de4c3d3822070db5babbdf8b113 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a35720c07870fcda4ae39148f8524274e inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a35720c07870fcda4ae39148f8524274e">SupportsPrecomputation</a> () const</td></tr> <tr class="memdesc:a35720c07870fcda4ae39148f8524274e inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Determines whether the object supports precomputation. <a href="class_crypto_material.html#a35720c07870fcda4ae39148f8524274e">More...</a><br /></td></tr> <tr class="separator:a35720c07870fcda4ae39148f8524274e inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a78380e019615a35d06e951a0f28e0a99 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a78380e019615a35d06e951a0f28e0a99">Precompute</a> (unsigned int precomputationStorage)</td></tr> <tr class="memdesc:a78380e019615a35d06e951a0f28e0a99 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Perform precomputation. <a href="class_crypto_material.html#a78380e019615a35d06e951a0f28e0a99">More...</a><br /></td></tr> <tr class="separator:a78380e019615a35d06e951a0f28e0a99 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2911ebd9a28efa43dab71e5c12e2c90d inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a2911ebd9a28efa43dab71e5c12e2c90d">LoadPrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &storedPrecomputation)</td></tr> <tr class="memdesc:a2911ebd9a28efa43dab71e5c12e2c90d inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Retrieve previously saved precomputation. <a href="class_crypto_material.html#a2911ebd9a28efa43dab71e5c12e2c90d">More...</a><br /></td></tr> <tr class="separator:a2911ebd9a28efa43dab71e5c12e2c90d inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a65b905e1af3efb962c356d49d2c90e73 inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a65b905e1af3efb962c356d49d2c90e73">SavePrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &storedPrecomputation) const</td></tr> <tr class="memdesc:a65b905e1af3efb962c356d49d2c90e73 inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Save precomputation for later use. <a href="class_crypto_material.html#a65b905e1af3efb962c356d49d2c90e73">More...</a><br /></td></tr> <tr class="separator:a65b905e1af3efb962c356d49d2c90e73 inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa1da44802c5cf00946043922cb9e7e6e inherit pub_methods_class_crypto_material"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#aa1da44802c5cf00946043922cb9e7e6e">DoQuickSanityCheck</a> () const</td></tr> <tr class="memdesc:aa1da44802c5cf00946043922cb9e7e6e inherit pub_methods_class_crypto_material"><td class="mdescLeft"> </td><td class="mdescRight">Perform a quick sanity check. <a href="class_crypto_material.html#aa1da44802c5cf00946043922cb9e7e6e">More...</a><br /></td></tr> <tr class="separator:aa1da44802c5cf00946043922cb9e7e6e inherit pub_methods_class_crypto_material"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_class_name_value_pairs"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_name_value_pairs')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_name_value_pairs.html">NameValuePairs</a></td></tr> <tr class="memitem:a3401528f3d69d70f200086501b8af282 inherit pub_methods_class_name_value_pairs"><td class="memTemplParams" colspan="2">template<class T > </td></tr> <tr class="memitem:a3401528f3d69d70f200086501b8af282 inherit pub_methods_class_name_value_pairs"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a3401528f3d69d70f200086501b8af282">GetThisObject</a> (T &object) const</td></tr> <tr class="memdesc:a3401528f3d69d70f200086501b8af282 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a copy of this object or subobject. <a href="class_name_value_pairs.html#a3401528f3d69d70f200086501b8af282">More...</a><br /></td></tr> <tr class="separator:a3401528f3d69d70f200086501b8af282 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abce7b413ce1345ab7b7d05fa3d1834f5 inherit pub_methods_class_name_value_pairs"><td class="memTemplParams" colspan="2">template<class T > </td></tr> <tr class="memitem:abce7b413ce1345ab7b7d05fa3d1834f5 inherit pub_methods_class_name_value_pairs"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#abce7b413ce1345ab7b7d05fa3d1834f5">GetThisPointer</a> (T *&ptr) const</td></tr> <tr class="memdesc:abce7b413ce1345ab7b7d05fa3d1834f5 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a pointer to this object. <a href="class_name_value_pairs.html#abce7b413ce1345ab7b7d05fa3d1834f5">More...</a><br /></td></tr> <tr class="separator:abce7b413ce1345ab7b7d05fa3d1834f5 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5357c3a09602e44671d1e42cb9a9408d inherit pub_methods_class_name_value_pairs"><td class="memTemplParams" colspan="2">template<class T > </td></tr> <tr class="memitem:a5357c3a09602e44671d1e42cb9a9408d inherit pub_methods_class_name_value_pairs"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a5357c3a09602e44671d1e42cb9a9408d">GetValue</a> (const char *name, T &value) const</td></tr> <tr class="memdesc:a5357c3a09602e44671d1e42cb9a9408d inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a named value. <a href="class_name_value_pairs.html#a5357c3a09602e44671d1e42cb9a9408d">More...</a><br /></td></tr> <tr class="separator:a5357c3a09602e44671d1e42cb9a9408d inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4daf1ef67b547c6be96188a43e5ec05e inherit pub_methods_class_name_value_pairs"><td class="memTemplParams" colspan="2">template<class T > </td></tr> <tr class="memitem:a4daf1ef67b547c6be96188a43e5ec05e inherit pub_methods_class_name_value_pairs"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a4daf1ef67b547c6be96188a43e5ec05e">GetValueWithDefault</a> (const char *name, T defaultValue) const</td></tr> <tr class="memdesc:a4daf1ef67b547c6be96188a43e5ec05e inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a named value. <a href="class_name_value_pairs.html#a4daf1ef67b547c6be96188a43e5ec05e">More...</a><br /></td></tr> <tr class="separator:a4daf1ef67b547c6be96188a43e5ec05e inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a13faea827ee047cd58557282806ed2e1 inherit pub_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a13faea827ee047cd58557282806ed2e1">GetValueNames</a> () const</td></tr> <tr class="memdesc:a13faea827ee047cd58557282806ed2e1 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a list of value names that can be retrieved. <a href="class_name_value_pairs.html#a13faea827ee047cd58557282806ed2e1">More...</a><br /></td></tr> <tr class="separator:a13faea827ee047cd58557282806ed2e1 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a94e5b19dc54625799797668ff8627c57 inherit pub_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a94e5b19dc54625799797668ff8627c57">GetIntValue</a> (const char *name, int &value) const</td></tr> <tr class="memdesc:a94e5b19dc54625799797668ff8627c57 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a named value with type int. <a href="class_name_value_pairs.html#a94e5b19dc54625799797668ff8627c57">More...</a><br /></td></tr> <tr class="separator:a94e5b19dc54625799797668ff8627c57 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7ddb654b7afcd1a04422a7b4b01366d9 inherit pub_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a7ddb654b7afcd1a04422a7b4b01366d9">GetIntValueWithDefault</a> (const char *name, int defaultValue) const</td></tr> <tr class="memdesc:a7ddb654b7afcd1a04422a7b4b01366d9 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a named value with type int, with default. <a href="class_name_value_pairs.html#a7ddb654b7afcd1a04422a7b4b01366d9">More...</a><br /></td></tr> <tr class="separator:a7ddb654b7afcd1a04422a7b4b01366d9 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af28f6e7abf98606d8146bfda271e99db inherit pub_methods_class_name_value_pairs"><td class="memTemplParams" colspan="2">template<class T > </td></tr> <tr class="memitem:af28f6e7abf98606d8146bfda271e99db inherit pub_methods_class_name_value_pairs"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#af28f6e7abf98606d8146bfda271e99db">GetRequiredParameter</a> (const char *className, const char *name, T &value) const</td></tr> <tr class="memdesc:af28f6e7abf98606d8146bfda271e99db inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves a required name/value pair. <a href="class_name_value_pairs.html#af28f6e7abf98606d8146bfda271e99db">More...</a><br /></td></tr> <tr class="separator:af28f6e7abf98606d8146bfda271e99db inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acfb673d912e1bc19386bebba9d58c23f inherit pub_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#acfb673d912e1bc19386bebba9d58c23f">GetRequiredIntParameter</a> (const char *className, const char *name, int &value) const</td></tr> <tr class="memdesc:acfb673d912e1bc19386bebba9d58c23f inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves a required name/value pair. <a href="class_name_value_pairs.html#acfb673d912e1bc19386bebba9d58c23f">More...</a><br /></td></tr> <tr class="separator:acfb673d912e1bc19386bebba9d58c23f inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9fc3f5c4480d53b8104c67ca7958e332 inherit pub_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a9fc3f5c4480d53b8104c67ca7958e332">GetVoidValue</a> (const char *name, const std::type_info &valueType, void *pValue) const =0</td></tr> <tr class="memdesc:a9fc3f5c4480d53b8104c67ca7958e332 inherit pub_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Get a named value. <a href="class_name_value_pairs.html#a9fc3f5c4480d53b8104c67ca7958e332">More...</a><br /></td></tr> <tr class="separator:a9fc3f5c4480d53b8104c67ca7958e332 inherit pub_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_static_methods_class_name_value_pairs"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_name_value_pairs')"><img src="closed.png" alt="-"/> Static Public Member Functions inherited from <a class="el" href="class_name_value_pairs.html">NameValuePairs</a></td></tr> <tr class="memitem:ad4b80eeeb5f1f58e3cedb12f02a6b870 inherit pub_static_methods_class_name_value_pairs"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#ad4b80eeeb5f1f58e3cedb12f02a6b870">ThrowIfTypeMismatch</a> (const char *name, const std::type_info &stored, const std::type_info &retrieving)</td></tr> <tr class="memdesc:ad4b80eeeb5f1f58e3cedb12f02a6b870 inherit pub_static_methods_class_name_value_pairs"><td class="mdescLeft"> </td><td class="mdescRight">Ensures an expected name and type is present. <a href="class_name_value_pairs.html#ad4b80eeeb5f1f58e3cedb12f02a6b870">More...</a><br /></td></tr> <tr class="separator:ad4b80eeeb5f1f58e3cedb12f02a6b870 inherit pub_static_methods_class_name_value_pairs"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Interface for public keys. </p> <p class="definition">Definition at line <a class="el" href="cryptlib_8h_source.html#l02369">2369</a> of file <a class="el" href="cryptlib_8h_source.html">cryptlib.h</a>.</p> </div><hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="cryptlib_8h_source.html">cryptlib.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Wed Nov 27 2019 15:04:33 for Crypto++ by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.15 </small></address> </body> </html>