<!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++: rsa.h File 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><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>rsa.h File Reference</h1> <p>This file contains classes that implement the <a class="el" href="struct_r_s_a.html" title="RSA.">RSA</a> ciphers and signature schemes as defined in PKCS #1 v2.0. <a href="#_details">More...</a></p> <code>#include "<a class="el" href="pubkey_8h_source.html">pubkey.h</a>"</code><br/> <code>#include "asn.h"</code><br/> <code>#include "pkcspad.h"</code><br/> <code>#include "oaep.h"</code><br/> <code>#include "<a class="el" href="emsa2_8h_source.html">emsa2.h</a>"</code><br/> <p><a href="rsa_8h_source.html">Go to the source code of this file.</a></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_s_a_function.html">RSAFunction</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">_ <a href="class_r_s_a_function.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_r_s_a_function.html">InvertibleRSAFunction</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">_ <a href="class_invertible_r_s_a_function.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_s_a_function___i_s_o.html">RSAFunction_ISO</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_r_s_a_function___i_s_o.html">InvertibleRSAFunction_ISO</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_r_s_a.html">RSA</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="struct_r_s_a.html" title="RSA.">RSA</a>. <a href="struct_r_s_a.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_r_s_a_e_s.html">RSAES< STANDARD ></a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a href="http://www.weidai.com/scan-mirror/ca.html#RSA">RSA cryptosystem</a> <a href="struct_r_s_a_e_s.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_r_s_a_s_s.html">RSASS< STANDARD, H ></a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a href="http://www.weidai.com/scan-mirror/sig.html#RSA">RSA signature scheme with appendix</a> <a href="struct_r_s_a_s_s.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_r_s_a___i_s_o.html">RSA_ISO</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_r_s_a_s_s___i_s_o.html">RSASS_ISO< H ></a></td></tr> <tr><td colspan="2"><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68b286f74b37b1ff987a83d50832bbd3"></a><!-- doxytag: member="rsa.h::RSAES_PKCS1v15_Decryptor" ref="a68b286f74b37b1ff987a83d50832bbd3" args="" --> typedef <a class="el" href="struct_r_s_a_e_s.html">RSAES</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a> ><br class="typebreak"/> ::Decryptor </td><td class="memItemRight" valign="bottom"><b>RSAES_PKCS1v15_Decryptor</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ba3bff3d219821a0f1a2aadd4181fa3"></a><!-- doxytag: member="rsa.h::RSAES_PKCS1v15_Encryptor" ref="a0ba3bff3d219821a0f1a2aadd4181fa3" args="" --> typedef <a class="el" href="struct_r_s_a_e_s.html">RSAES</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a> ><br class="typebreak"/> ::Encryptor </td><td class="memItemRight" valign="bottom"><b>RSAES_PKCS1v15_Encryptor</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab77b596cf00c36271f9b1217699d7d62"></a><!-- doxytag: member="rsa.h::RSAES_OAEP_SHA_Decryptor" ref="ab77b596cf00c36271f9b1217699d7d62" args="" --> typedef <a class="el" href="struct_r_s_a_e_s.html">RSAES</a>< <a class="el" href="class_o_a_e_p.html">OAEP</a>< <a class="el" href="class_s_h_a1.html">SHA</a> ><br class="typebreak"/> >::Decryptor </td><td class="memItemRight" valign="bottom"><b>RSAES_OAEP_SHA_Decryptor</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aacce24cf198347525c9bbf6fb90863b8"></a><!-- doxytag: member="rsa.h::RSAES_OAEP_SHA_Encryptor" ref="aacce24cf198347525c9bbf6fb90863b8" args="" --> typedef <a class="el" href="struct_r_s_a_e_s.html">RSAES</a>< <a class="el" href="class_o_a_e_p.html">OAEP</a>< <a class="el" href="class_s_h_a1.html">SHA</a> ><br class="typebreak"/> >::Encryptor </td><td class="memItemRight" valign="bottom"><b>RSAES_OAEP_SHA_Encryptor</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6772b3d51b4dc972ca1d23ea5231c7cf"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_SHA_Signer" ref="a6772b3d51b4dc972ca1d23ea5231c7cf" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <a class="el" href="class_s_h_a1.html">SHA</a> ><br class="typebreak"/> ::Signer </td><td class="memItemRight" valign="bottom"><b>RSASSA_PKCS1v15_SHA_Signer</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abac3ac56160c84a05a74c30a23a8ae47"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_SHA_Verifier" ref="abac3ac56160c84a05a74c30a23a8ae47" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <a class="el" href="class_s_h_a1.html">SHA</a> ><br class="typebreak"/> ::Verifier </td><td class="memItemRight" valign="bottom"><b>RSASSA_PKCS1v15_SHA_Verifier</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca3ff9214304b6b0d0b881cf5b780873"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_MD2_Signer" ref="aca3ff9214304b6b0d0b881cf5b780873" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <br class="typebreak"/> <a class="el" href="class_weak1_1_1_m_d2.html">Weak1::MD2</a> >::Signer </td><td class="memItemRight" valign="bottom"><b>Weak::RSASSA_PKCS1v15_MD2_Signer</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b3dd6309001cfa33998a796dbe6d267"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_MD2_Verifier" ref="a8b3dd6309001cfa33998a796dbe6d267" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <br class="typebreak"/> <a class="el" href="class_weak1_1_1_m_d2.html">Weak1::MD2</a> >::Verifier </td><td class="memItemRight" valign="bottom"><b>Weak::RSASSA_PKCS1v15_MD2_Verifier</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b8f2af46d119d427340172db09fa0e3"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_MD5_Signer" ref="a3b8f2af46d119d427340172db09fa0e3" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <br class="typebreak"/> <a class="el" href="class_weak1_1_1_m_d5.html">Weak1::MD5</a> >::Signer </td><td class="memItemRight" valign="bottom"><b>Weak::RSASSA_PKCS1v15_MD5_Signer</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a083703cac0616dbb034b1839094a4bd8"></a><!-- doxytag: member="rsa.h::RSASSA_PKCS1v15_MD5_Verifier" ref="a083703cac0616dbb034b1839094a4bd8" args="" --> typedef <a class="el" href="struct_r_s_a_s_s.html">RSASS</a>< <a class="el" href="struct_p_k_c_s1v15.html">PKCS1v15</a>, <br class="typebreak"/> <a class="el" href="class_weak1_1_1_m_d5.html">Weak1::MD5</a> >::Verifier </td><td class="memItemRight" valign="bottom"><b>Weak::RSASSA_PKCS1v15_MD5_Verifier</b></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>This file contains classes that implement the <a class="el" href="struct_r_s_a.html" title="RSA.">RSA</a> ciphers and signature schemes as defined in PKCS #1 v2.0. </p> <p>Definition in file <a class="el" href="rsa_8h_source.html">rsa.h</a>.</p> </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>