📄 class_montgomery_representation.html
字号:
<!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++: MontgomeryRepresentation 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div><h1>MontgomeryRepresentation Class Reference</h1><code>#include <<a class="el" href="modarith_8h-source.html">modarith.h</a>></code><p><p>Inheritance diagram for MontgomeryRepresentation:<p><center><img src="class_montgomery_representation.png" usemap="#MontgomeryRepresentation_map" border="0" alt=""></center><map name="MontgomeryRepresentation_map"><area href="class_modular_arithmetic.html" alt="ModularArithmetic" shape="rect" coords="0,112,166,136"><area href="class_abstract_ring.html" alt="AbstractRing< Integer >" shape="rect" coords="0,56,166,80"><area href="class_abstract_group.html" alt="AbstractGroup< Integer >" shape="rect" coords="0,0,166,24"></map><a href="class_montgomery_representation-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>do modular arithmetics in Montgomery representation for increased speed <p><p>Definition at line <a class="el" href="modarith_8h-source.html#l00120">120</a> of file <a class="el" href="modarith_8h-source.html">modarith.h</a>.<table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Types</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationw0" doxytag="MontgomeryRepresentation::RandomizationParameter"></a>typedef int </td><td class="memItemRight" valign=bottom><b>RandomizationParameter</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationw1" doxytag="MontgomeryRepresentation::Element"></a>typedef <a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>Element</b></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="_montgomery_representationa0" doxytag="MontgomeryRepresentation::MontgomeryRepresentation"></a> </td><td class="memItemRight" valign=bottom><b>MontgomeryRepresentation</b> (const <a class="el" href="class_integer.html">Integer</a> &modulus)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa1" doxytag="MontgomeryRepresentation::Clone"></a>virtual <a class="el" href="class_modular_arithmetic.html">ModularArithmetic</a> * </td><td class="memItemRight" valign=bottom><b>Clone</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa2" doxytag="MontgomeryRepresentation::IsMontgomeryRepresentation"></a>bool </td><td class="memItemRight" valign=bottom><b>IsMontgomeryRepresentation</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa3" doxytag="MontgomeryRepresentation::ConvertIn"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>ConvertIn</b> (const <a class="el" href="class_integer.html">Integer</a> &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa4" doxytag="MontgomeryRepresentation::ConvertOut"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>ConvertOut</b> (const <a class="el" href="class_integer.html">Integer</a> &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa5" doxytag="MontgomeryRepresentation::MultiplicativeIdentity"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>MultiplicativeIdentity</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa6" doxytag="MontgomeryRepresentation::Multiply"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Multiply</b> (const <a class="el" href="class_integer.html">Integer</a> &a, const <a class="el" href="class_integer.html">Integer</a> &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa7" doxytag="MontgomeryRepresentation::Square"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Square</b> (const <a class="el" href="class_integer.html">Integer</a> &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa8" doxytag="MontgomeryRepresentation::MultiplicativeInverse"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>MultiplicativeInverse</b> (const <a class="el" href="class_integer.html">Integer</a> &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa9" doxytag="MontgomeryRepresentation::CascadeExponentiate"></a><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign=bottom><b>CascadeExponentiate</b> (const <a class="el" href="class_integer.html">Integer</a> &x, const <a class="el" href="class_integer.html">Integer</a> &e1, const <a class="el" href="class_integer.html">Integer</a> &y, const <a class="el" href="class_integer.html">Integer</a> &e2) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa10" doxytag="MontgomeryRepresentation::SimultaneousExponentiate"></a>void </td><td class="memItemRight" valign=bottom><b>SimultaneousExponentiate</b> (Element *results, const Element &base, const <a class="el" href="class_integer.html">Integer</a> *exponents, unsigned int exponentsCount) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa11" doxytag="MontgomeryRepresentation::DEREncode"></a>void </td><td class="memItemRight" valign=bottom><b>DEREncode</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa12" doxytag="MontgomeryRepresentation::DEREncodeElement"></a>void </td><td class="memItemRight" valign=bottom><b>DEREncodeElement</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &out, const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa13" doxytag="MontgomeryRepresentation::BERDecodeElement"></a>void </td><td class="memItemRight" valign=bottom><b>BERDecodeElement</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &in, Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa14" doxytag="MontgomeryRepresentation::GetModulus"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>GetModulus</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa15" doxytag="MontgomeryRepresentation::SetModulus"></a>void </td><td class="memItemRight" valign=bottom><b>SetModulus</b> (const <a class="el" href="class_integer.html">Integer</a> &newModulus)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa16" doxytag="MontgomeryRepresentation::Half"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Half</b> (const <a class="el" href="class_integer.html">Integer</a> &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa17" doxytag="MontgomeryRepresentation::Equal"></a>bool </td><td class="memItemRight" valign=bottom><b>Equal</b> (const <a class="el" href="class_integer.html">Integer</a> &a, const <a class="el" href="class_integer.html">Integer</a> &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_abstract_ringa13" doxytag="MontgomeryRepresentation::Equal"></a>virtual bool </td><td class="memItemRight" valign=bottom><b>Equal</b> (const Element &a, const Element &b) const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa19" doxytag="MontgomeryRepresentation::Identity"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Identity</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa20" doxytag="MontgomeryRepresentation::Add"></a>const <a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Add</b> (const <a class="el" href="class_integer.html">Integer</a> &a, const <a class="el" href="class_integer.html">Integer</a> &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_abstract_ringa15" doxytag="MontgomeryRepresentation::Add"></a>virtual const Element & </td><td class="memItemRight" valign=bottom><b>Add</b> (const Element &a, const Element &b) const=0</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_montgomery_representationa22" doxytag="MontgomeryRepresentation::Accumulate"></a><a class="el" href="class_integer.html">Integer</a> & </td><td class="memItemRight" valign=bottom><b>Accumulate</b> (<a class="el" href="class_integer.html">Integer</a> &a, const <a class="el" href="class_integer.html">Integer</a> &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_abstract_ringa20" doxytag="MontgomeryRepresentation::Accumulate"></a>virtual Element & </td><td class="memItemRight" valign=bottom><b>Accumulate</b> (Element &a, const Element &b) const</td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -