📄 class_invertible_rabin_function.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>Crypto++: InvertibleRabinFunction Class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.2 --><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="classes.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="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</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><h1>InvertibleRabinFunction Class Reference</h1><!-- doxytag: class="InvertibleRabinFunction" --><!-- doxytag: inherits="RabinFunction,TrapdoorFunctionInverse,PrivateKey" --><code>#include <<a class="el" href="rabin_8h-source.html">rabin.h</a>></code><p><p>Inheritance diagram for InvertibleRabinFunction:<p><center><img src="class_invertible_rabin_function.png" usemap="#InvertibleRabinFunction_map" border="0" alt=""></center><map name="InvertibleRabinFunction_map"><area href="class_rabin_function.html" alt="RabinFunction" shape="rect" coords="116,168,339,192"><area href="class_trapdoor_function_inverse.html" alt="TrapdoorFunctionInverse" shape="rect" coords="466,168,689,192"><area href="class_private_key.html" alt="PrivateKey" shape="rect" coords="699,168,922,192"><area href="class_trapdoor_function.html" alt="TrapdoorFunction" shape="rect" coords="0,112,223,136"><area href="class_public_key.html" alt="PublicKey" shape="rect" coords="233,112,456,136"><area href="class_randomized_trapdoor_function_inverse.html" alt="RandomizedTrapdoorFunctionInverse" shape="rect" coords="466,112,689,136"><area href="class_generatable_crypto_material.html" alt="GeneratableCryptoMaterial" shape="rect" coords="699,112,922,136"><area href="class_randomized_trapdoor_function.html" alt="RandomizedTrapdoorFunction" shape="rect" coords="0,56,223,80"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="233,56,456,80"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="699,56,922,80"><area href="class_trapdoor_function_bounds.html" alt="TrapdoorFunctionBounds" shape="rect" coords="0,0,223,24"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="233,0,456,24"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="699,0,922,24"></map><a href="class_invertible_rabin_function-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="rabin_8h-source.html#l00046">46</a> of file <a class="el" href="rabin_8h-source.html">rabin.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 class="anchor" name="348e688b3a648defa9ca96bf16cc14d2"></a><!-- doxytag: member="InvertibleRabinFunction::Initialize" ref="348e688b3a648defa9ca96bf16cc14d2" args="(const Integer &n, const Integer &r, const Integer &s, const Integer &p, const Integer &q, const Integer &u)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#348e688b3a648defa9ca96bf16cc14d2">Initialize</a> (const <a class="el" href="class_integer.html">Integer</a> &n, const <a class="el" href="class_integer.html">Integer</a> &r, const <a class="el" href="class_integer.html">Integer</a> &s, const <a class="el" href="class_integer.html">Integer</a> &p, const <a class="el" href="class_integer.html">Integer</a> &q, const <a class="el" href="class_integer.html">Integer</a> &u)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5097cd1653af359888c21b793c2d645a"></a><!-- doxytag: member="InvertibleRabinFunction::Initialize" ref="5097cd1653af359888c21b793c2d645a" args="(RandomNumberGenerator &rng, unsigned int keybits)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#5097cd1653af359888c21b793c2d645a">Initialize</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, unsigned int keybits)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d770bc9e03d2f5b812655b6d8dd1d796"></a><!-- doxytag: member="InvertibleRabinFunction::BERDecode" ref="d770bc9e03d2f5b812655b6d8dd1d796" args="(BufferedTransformation &bt)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#d770bc9e03d2f5b812655b6d8dd1d796">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e7296b7b97da157a6cb0dc193174aa2d"></a><!-- doxytag: member="InvertibleRabinFunction::DEREncode" ref="e7296b7b97da157a6cb0dc193174aa2d" args="(BufferedTransformation &bt) const " -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#e7296b7b97da157a6cb0dc193174aa2d">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15788f2fb0225297f665e30044661dfd"></a><!-- doxytag: member="InvertibleRabinFunction::CalculateInverse" ref="15788f2fb0225297f665e30044661dfd" args="(RandomNumberGenerator &rng, const Integer &x) const " --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#15788f2fb0225297f665e30044661dfd">CalculateInverse</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, const <a class="el" href="class_integer.html">Integer</a> &x) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#8f654d654bf7e833c9c48351346d3cb9">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 <a href="#8f654d654bf7e833c9c48351346d3cb9"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="52931eba7e69b47a1b9307dc92721e0f"></a><!-- doxytag: member="InvertibleRabinFunction::GetVoidValue" ref="52931eba7e69b47a1b9307dc92721e0f" args="(const char *name, const std::type_info &valueType, void *pValue) const " -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#52931eba7e69b47a1b9307dc92721e0f">GetVoidValue</a> (const char *name, const std::type_info &valueType, void *pValue) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">to be implemented by derived classes, users should use one of the above functions instead <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#66594bb7f369e4ecc30bbe6ae62527ea">AssignFrom</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &source)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">assign values from source to this object <a href="#66594bb7f369e4ecc30bbe6ae62527ea"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#571737380b956b4add10c855484af670">GenerateRandom</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &rng, const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &alg)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="52f57e827225090d46ce091bc5a8c95f"></a><!-- doxytag: member="InvertibleRabinFunction::GetPrime1" ref="52f57e827225090d46ce091bc5a8c95f" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#52f57e827225090d46ce091bc5a8c95f">GetPrime1</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b4823bee8b9f438f87cd7cfaa9057af"></a><!-- doxytag: member="InvertibleRabinFunction::GetPrime2" ref="9b4823bee8b9f438f87cd7cfaa9057af" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#9b4823bee8b9f438f87cd7cfaa9057af">GetPrime2</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac153f609582d2cb6b7aecb0fc119c52"></a><!-- doxytag: member="InvertibleRabinFunction::GetMultiplicativeInverseOfPrime2ModPrime1" ref="ac153f609582d2cb6b7aecb0fc119c52" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#ac153f609582d2cb6b7aecb0fc119c52">GetMultiplicativeInverseOfPrime2ModPrime1</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3a89d8a8849e931881e88218fa386335"></a><!-- doxytag: member="InvertibleRabinFunction::SetPrime1" ref="3a89d8a8849e931881e88218fa386335" args="(const Integer &p)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#3a89d8a8849e931881e88218fa386335">SetPrime1</a> (const <a class="el" href="class_integer.html">Integer</a> &p)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd5b2db35c82d1005b3c7aa45417f495"></a><!-- doxytag: member="InvertibleRabinFunction::SetPrime2" ref="cd5b2db35c82d1005b3c7aa45417f495" args="(const Integer &q)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#cd5b2db35c82d1005b3c7aa45417f495">SetPrime2</a> (const <a class="el" href="class_integer.html">Integer</a> &q)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0690a524ac386cac8a69dcbb02292a44"></a><!-- doxytag: member="InvertibleRabinFunction::SetMultiplicativeInverseOfPrime2ModPrime1" ref="0690a524ac386cac8a69dcbb02292a44" args="(const Integer &u)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_invertible_rabin_function.html#0690a524ac386cac8a69dcbb02292a44">SetMultiplicativeInverseOfPrime2ModPrime1</a> (const <a class="el" href="class_integer.html">Integer</a> &u)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c9bff15dd4169d942e7eee3afced0bc7"></a><!-- doxytag: member="InvertibleRabinFunction::Initialize" ref="c9bff15dd4169d942e7eee3afced0bc7" args="(const Integer &n, const Integer &r, const Integer &s)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#c9bff15dd4169d942e7eee3afced0bc7">Initialize</a> (const <a class="el" href="class_integer.html">Integer</a> &n, const <a class="el" href="class_integer.html">Integer</a> &r, const <a class="el" href="class_integer.html">Integer</a> &s)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d186fb4ee71efe6dc7257b89395ba172"></a><!-- doxytag: member="InvertibleRabinFunction::ApplyFunction" ref="d186fb4ee71efe6dc7257b89395ba172" args="(const Integer &x) const " --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#d186fb4ee71efe6dc7257b89395ba172">ApplyFunction</a> (const <a class="el" href="class_integer.html">Integer</a> &x) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="df573336f4b2607292ea958fd9276e5a"></a><!-- doxytag: member="InvertibleRabinFunction::PreimageBound" ref="df573336f4b2607292ea958fd9276e5a" args="() const" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#df573336f4b2607292ea958fd9276e5a">PreimageBound</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="12067fc66798a780b88e81b3c348dcb9"></a><!-- doxytag: member="InvertibleRabinFunction::ImageBound" ref="12067fc66798a780b88e81b3c348dcb9" args="() const" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#12067fc66798a780b88e81b3c348dcb9">ImageBound</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="97d3e83417fdfdef7a081d8750e73982"></a><!-- doxytag: member="InvertibleRabinFunction::GetModulus" ref="97d3e83417fdfdef7a081d8750e73982" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#97d3e83417fdfdef7a081d8750e73982">GetModulus</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7744a5bdc50a95b4a5bf65f363dcf84e"></a><!-- doxytag: member="InvertibleRabinFunction::GetQuadraticResidueModPrime1" ref="7744a5bdc50a95b4a5bf65f363dcf84e" args="() const" -->const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_rabin_function.html#7744a5bdc50a95b4a5bf65f363dcf84e">GetQuadraticResidueModPrime1</a> () const</td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -