<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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"/> <title>Crypto++: ASN1Object Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>ASN1Object Class Reference</h1><!-- doxytag: class="ASN1Object" --> <p>interface for encoding and decoding ASN1 objects <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="cryptlib_8h_source.html">cryptlib.h</a>></code></p> <div class="dynheader"> Inheritance diagram for ASN1Object:</div> <div class="dynsection"> <div class="center"> <img src="class_a_s_n1_object.gif" usemap="#ASN1Object_map" alt=""/> <map id="ASN1Object_map" name="ASN1Object_map"> <area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< BASE >" shape="rect" coords="0,56,986,80"/> <area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< DL_GroupParameters< Integer > >" shape="rect" coords="996,56,1982,80"/> <area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< PrivateKey >" shape="rect" coords="2988,56,3974,80"/> <area href="class_a_s_n1_crypto_material.html" alt="ASN1CryptoMaterial< PublicKey >" shape="rect" coords="5478,56,6464,80"/> <area href="class_integer.html" alt="Integer" shape="rect" coords="6474,56,7460,80"/> <area href="class_d_l___group_parameters___integer_based.html" alt="DL_GroupParameters_IntegerBased" shape="rect" coords="996,112,1982,136"/> <area href="class_p_k_c_s8_private_key.html" alt="PKCS8PrivateKey" shape="rect" coords="2988,112,3974,136"/> <area href="class_e_s_i_g_n_function.html" alt="ESIGNFunction" shape="rect" coords="4980,112,5966,136"/> <area href="class_x509_public_key.html" alt="X509PublicKey" shape="rect" coords="5976,112,6962,136"/> <area href="class_d_l___group_parameters_impl.html" alt="DL_GroupParametersImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC, DL_GroupParameters_IntegerBased >" shape="rect" coords="1992,168,2978,192"/> <area href="class_d_l___group_parameters_impl.html" alt="DL_GroupParametersImpl< GROUP_PRECOMP, BASE_PRECOMP, DL_GroupParameters_IntegerBased >" shape="rect" coords="1992,224,2978,248"/> <area href="class_d_l___group_parameters_impl.html" alt="DL_GroupParametersImpl< ModExpPrecomputation, DL_FixedBasePrecomputationImpl< typenameModExpPrecomputation::Element >, DL_GroupParameters_IntegerBased >" shape="rect" coords="1992,280,2978,304"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< PKCS8PrivateKey, DL_GroupParameters_EC< EC > >" shape="rect" coords="3984,168,4970,192"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< PKCS8PrivateKey, GP >" shape="rect" coords="3984,224,4970,248"/> <area href="class_invertible_r_s_a_function.html" alt="InvertibleRSAFunction" shape="rect" coords="3984,280,4970,304"/> <area href="class_invertible_e_s_i_g_n_function.html" alt="InvertibleESIGNFunction" shape="rect" coords="4980,168,5966,192"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< X509PublicKey, DL_GroupParameters_EC< EC > >" shape="rect" coords="6972,168,7958,192"/> <area href="class_d_l___key_impl.html" alt="DL_KeyImpl< X509PublicKey, GP >" shape="rect" coords="6972,224,7958,248"/> <area href="class_r_s_a_function.html" alt="RSAFunction" shape="rect" coords="6972,280,7958,304"/> </map> </div> </div> <p><a href="class_a_s_n1_object-members.html">List of all members.</a></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a430af8c994bc78d996067247fa5a0770"></a><!-- doxytag: member="ASN1Object::BERDecode" ref="a430af8c994bc78d996067247fa5a0770" args="(BufferedTransformation &bt)=0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_object.html#a430af8c994bc78d996067247fa5a0770">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">decode this object from a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using BER (Basic Encoding Rules) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10e40187a6ba048dfc8a2c8ca5c6c2ec"></a><!-- doxytag: member="ASN1Object::DEREncode" ref="a10e40187a6ba048dfc8a2c8ca5c6c2ec" args="(BufferedTransformation &bt) const =0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_object.html#a10e40187a6ba048dfc8a2c8ca5c6c2ec">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">encode this object into a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using DER (Distinguished Encoding Rules) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_s_n1_object.html#ab8446b61690a19015d3d565d86dd1d3d">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" title="interface for buffered transformations">BufferedTransformation</a>, using BER <a href="#ab8446b61690a19015d3d565d86dd1d3d"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>interface for encoding and decoding ASN1 objects </p> <p>Definition at line <a class="el" href="cryptlib_8h_source.html#l01647">1647</a> of file <a class="el" href="cryptlib_8h_source.html">cryptlib.h</a>.</p> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="ab8446b61690a19015d3d565d86dd1d3d"></a><!-- doxytag: member="ASN1Object::BEREncode" ref="ab8446b61690a19015d3d565d86dd1d3d" args="(BufferedTransformation &bt) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void ASN1Object::BEREncode </td> <td>(</td> <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> & </td> <td class="paramname"> <em>bt</em></td> <td> ) </td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>encode this object into a <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a>, using BER </p> <p>this may be useful if <a class="el" href="class_a_s_n1_object.html#a10e40187a6ba048dfc8a2c8ca5c6c2ec" title="encode this object into a BufferedTransformation, using DER (Distinguished Encoding...">DEREncode()</a> would be too inefficient </p> <p>Definition at line <a class="el" href="cryptlib_8h_source.html#l01657">1657</a> of file <a class="el" href="cryptlib_8h_source.html">cryptlib.h</a>.</p> </div> </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> <hr size="1"/><address style="text-align: right;"><small>Generated on 9 Dec 2009 for Crypto++ by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> </body> </html>