Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > 17f48c047155a7d4c992d6a672acd57f > files > 847

libcryptopp-devel-7.0.0-1.1.mga7.armv7hl.rpm

<!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++: ECP 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++
   &#160;<span id="projectnumber">7.0</span>
   </div>
   <div id="projectbrief">Free&nbsp;C&#43;&#43;&nbsp;class&nbsp;library&nbsp;of&nbsp;cryptographic&nbsp;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&amp;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="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_e_c_p-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ECP Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Elliptic Curve over GF(p), where p is prime.  
 <a href="class_e_c_p.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 ECP:</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_e_c_p.png" usemap="#ECP_map" alt=""/>
  <map id="ECP_map" name="ECP_map">
<area href="class_abstract_group.html" alt="AbstractGroup&lt; ECPPoint &gt;" shape="rect" coords="0,0,171,24"/>
<area href="class_encoded_point.html" alt="EncodedPoint&lt; ECPPoint &gt;" shape="rect" coords="181,0,352,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a746aebbc43b99972e5a647ebabbbc931"><td class="memItemLeft" align="right" valign="top"><a id="a746aebbc43b99972e5a647ebabbbc931"></a>
typedef <a class="el" href="class_modular_arithmetic.html">ModularArithmetic</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Field</b></td></tr>
<tr class="separator:a746aebbc43b99972e5a647ebabbbc931"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a337e68ddf10edab098c55474d52c4d04"><td class="memItemLeft" align="right" valign="top"><a id="a337e68ddf10edab098c55474d52c4d04"></a>
typedef <a class="el" href="class_integer.html">Integer</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FieldElement</b></td></tr>
<tr class="separator:a337e68ddf10edab098c55474d52c4d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99c34a437007f32af4e6c4ae275358ea"><td class="memItemLeft" align="right" valign="top"><a id="a99c34a437007f32af4e6c4ae275358ea"></a>
typedef <a class="el" href="struct_e_c_p_point.html">ECPPoint</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Point</b></td></tr>
<tr class="separator:a99c34a437007f32af4e6c4ae275358ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_class_abstract_group"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_abstract_group')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="class_abstract_group.html">AbstractGroup&lt; ECPPoint &gt;</a></td></tr>
<tr class="memitem:a4a2b3308fb5c13f70fcc5746be52ba7b inherit pub_types_class_abstract_group"><td class="memItemLeft" align="right" valign="top"><a id="a4a2b3308fb5c13f70fcc5746be52ba7b"></a>
typedef <a class="el" href="struct_e_c_p_point.html">ECPPoint</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Element</b></td></tr>
<tr class="separator:a4a2b3308fb5c13f70fcc5746be52ba7b inherit pub_types_class_abstract_group"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a50e65de68e93c6bf2e174c8dc2322731"><td class="memItemLeft" align="right" valign="top"><a id="a50e65de68e93c6bf2e174c8dc2322731"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a50e65de68e93c6bf2e174c8dc2322731">ECP</a> ()</td></tr>
<tr class="memdesc:a50e65de68e93c6bf2e174c8dc2322731"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a>. <br /></td></tr>
<tr class="separator:a50e65de68e93c6bf2e174c8dc2322731"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75052eac63ed5622c1e558852cd2d1a4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a75052eac63ed5622c1e558852cd2d1a4">ECP</a> (const <a class="el" href="class_e_c_p.html">ECP</a> &amp;ecp, bool convertToMontgomeryRepresentation=false)</td></tr>
<tr class="memdesc:a75052eac63ed5622c1e558852cd2d1a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a>.  <a href="#a75052eac63ed5622c1e558852cd2d1a4">More...</a><br /></td></tr>
<tr class="separator:a75052eac63ed5622c1e558852cd2d1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dbe4a90840d3b7cb23412a65414f4f5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a7dbe4a90840d3b7cb23412a65414f4f5">ECP</a> (const <a class="el" href="class_integer.html">Integer</a> &amp;modulus, const <a class="el" href="class_integer.html">FieldElement</a> &amp;a, const <a class="el" href="class_integer.html">FieldElement</a> &amp;b)</td></tr>
<tr class="memdesc:a7dbe4a90840d3b7cb23412a65414f4f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a>.  <a href="#a7dbe4a90840d3b7cb23412a65414f4f5">More...</a><br /></td></tr>
<tr class="separator:a7dbe4a90840d3b7cb23412a65414f4f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7f09fe942958b0b0933fa9a9a55fa6d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#aa7f09fe942958b0b0933fa9a9a55fa6d">ECP</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr>
<tr class="memdesc:aa7f09fe942958b0b0933fa9a9a55fa6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a> from BER encoded parameters.  <a href="#aa7f09fe942958b0b0933fa9a9a55fa6d">More...</a><br /></td></tr>
<tr class="separator:aa7f09fe942958b0b0933fa9a9a55fa6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2a025bdb4caffe2ead28d3c4fee4c5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#ad2a025bdb4caffe2ead28d3c4fee4c5a">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr>
<tr class="memdesc:ad2a025bdb4caffe2ead28d3c4fee4c5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode the fields fieldID and curve of the sequence ECParameters.  <a href="#ad2a025bdb4caffe2ead28d3c4fee4c5a">More...</a><br /></td></tr>
<tr class="separator:ad2a025bdb4caffe2ead28d3c4fee4c5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60fbeaa2294171f914f1e7c6ecda776e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a60fbeaa2294171f914f1e7c6ecda776e">Equal</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;Q) const</td></tr>
<tr class="memdesc:a60fbeaa2294171f914f1e7c6ecda776e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two elements for equality.  <a href="#a60fbeaa2294171f914f1e7c6ecda776e">More...</a><br /></td></tr>
<tr class="separator:a60fbeaa2294171f914f1e7c6ecda776e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a6ea0e6a710a7ff118ce5c9fa48c55e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a8a6ea0e6a710a7ff118ce5c9fa48c55e">Identity</a> () const</td></tr>
<tr class="memdesc:a8a6ea0e6a710a7ff118ce5c9fa48c55e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides the Identity element.  <a href="#a8a6ea0e6a710a7ff118ce5c9fa48c55e">More...</a><br /></td></tr>
<tr class="separator:a8a6ea0e6a710a7ff118ce5c9fa48c55e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a235a3931b7f4611fa7a1a3d5a95036ce"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a235a3931b7f4611fa7a1a3d5a95036ce">Inverse</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P) const</td></tr>
<tr class="memdesc:a235a3931b7f4611fa7a1a3d5a95036ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inverts the element in the group.  <a href="#a235a3931b7f4611fa7a1a3d5a95036ce">More...</a><br /></td></tr>
<tr class="separator:a235a3931b7f4611fa7a1a3d5a95036ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0031a4a3a18999fda3942713da554697"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a0031a4a3a18999fda3942713da554697">InversionIsFast</a> () const</td></tr>
<tr class="memdesc:a0031a4a3a18999fda3942713da554697"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine if inversion is fast.  <a href="#a0031a4a3a18999fda3942713da554697">More...</a><br /></td></tr>
<tr class="separator:a0031a4a3a18999fda3942713da554697"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae02a3946666ba03470a346270d6f8820"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#ae02a3946666ba03470a346270d6f8820">Add</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;Q) const</td></tr>
<tr class="memdesc:ae02a3946666ba03470a346270d6f8820"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds elements in the group.  <a href="#ae02a3946666ba03470a346270d6f8820">More...</a><br /></td></tr>
<tr class="separator:ae02a3946666ba03470a346270d6f8820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9528bc2c3075fff6c03e257846958497"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a9528bc2c3075fff6c03e257846958497">Double</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P) const</td></tr>
<tr class="memdesc:a9528bc2c3075fff6c03e257846958497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Doubles an element in the group.  <a href="#a9528bc2c3075fff6c03e257846958497">More...</a><br /></td></tr>
<tr class="separator:a9528bc2c3075fff6c03e257846958497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a2b80bdd5e9c39229962c8b87e7023a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_e_c_p_point.html">Point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a3a2b80bdd5e9c39229962c8b87e7023a">ScalarMultiply</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const <a class="el" href="class_integer.html">Integer</a> &amp;k) const</td></tr>
<tr class="memdesc:a3a2b80bdd5e9c39229962c8b87e7023a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a scalar multiplication.  <a href="#a3a2b80bdd5e9c39229962c8b87e7023a">More...</a><br /></td></tr>
<tr class="separator:a3a2b80bdd5e9c39229962c8b87e7023a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a905ca5e76a69b26efba70c46be3576fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_e_c_p_point.html">Point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a905ca5e76a69b26efba70c46be3576fb">CascadeScalarMultiply</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const <a class="el" href="class_integer.html">Integer</a> &amp;k1, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;Q, const <a class="el" href="class_integer.html">Integer</a> &amp;k2) const</td></tr>
<tr class="memdesc:a905ca5e76a69b26efba70c46be3576fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO.  <a href="#a905ca5e76a69b26efba70c46be3576fb">More...</a><br /></td></tr>
<tr class="separator:a905ca5e76a69b26efba70c46be3576fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6f7bcfb3ff89c7d6ba1265640f95d03"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#af6f7bcfb3ff89c7d6ba1265640f95d03">SimultaneousMultiply</a> (<a class="el" href="struct_e_c_p_point.html">Point</a> *results, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;base, const <a class="el" href="class_integer.html">Integer</a> *exponents, unsigned int exponentsCount) const</td></tr>
<tr class="memdesc:af6f7bcfb3ff89c7d6ba1265640f95d03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies a base to multiple exponents in a group.  <a href="#af6f7bcfb3ff89c7d6ba1265640f95d03">More...</a><br /></td></tr>
<tr class="separator:af6f7bcfb3ff89c7d6ba1265640f95d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeccb64bdf37b5afc05e1cdc2ef29cc13"><td class="memItemLeft" align="right" valign="top"><a id="aeccb64bdf37b5afc05e1cdc2ef29cc13"></a>
<a class="el" href="struct_e_c_p_point.html">Point</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Multiply</b> (const <a class="el" href="class_integer.html">Integer</a> &amp;k, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P) const</td></tr>
<tr class="separator:aeccb64bdf37b5afc05e1cdc2ef29cc13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad12db3bd68abbaf920fe8c95e6f5cd98"><td class="memItemLeft" align="right" valign="top"><a id="ad12db3bd68abbaf920fe8c95e6f5cd98"></a>
<a class="el" href="struct_e_c_p_point.html">Point</a>&#160;</td><td class="memItemRight" valign="bottom"><b>CascadeMultiply</b> (const <a class="el" href="class_integer.html">Integer</a> &amp;k1, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const <a class="el" href="class_integer.html">Integer</a> &amp;k2, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;Q) const</td></tr>
<tr class="separator:ad12db3bd68abbaf920fe8c95e6f5cd98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af27a13aecaad131bcff279e6707e0b9e"><td class="memItemLeft" align="right" valign="top"><a id="af27a13aecaad131bcff279e6707e0b9e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>ValidateParameters</b> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int level=3) const</td></tr>
<tr class="separator:af27a13aecaad131bcff279e6707e0b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84825919705740161c1bd28b07cbd209"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a84825919705740161c1bd28b07cbd209">VerifyPoint</a> (const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P) const</td></tr>
<tr class="memdesc:a84825919705740161c1bd28b07cbd209"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies points on elliptic curve.  <a href="#a84825919705740161c1bd28b07cbd209">More...</a><br /></td></tr>
<tr class="separator:a84825919705740161c1bd28b07cbd209"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8b38e2d453f1173923c6fd8e9880606"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#aa8b38e2d453f1173923c6fd8e9880606">EncodedPointSize</a> (bool compressed=false) const</td></tr>
<tr class="memdesc:aa8b38e2d453f1173923c6fd8e9880606"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines encoded point size.  <a href="#aa8b38e2d453f1173923c6fd8e9880606">More...</a><br /></td></tr>
<tr class="separator:aa8b38e2d453f1173923c6fd8e9880606"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac188a1e14a4f7807720f45e3aa30768"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#aac188a1e14a4f7807720f45e3aa30768">DecodePoint</a> (<a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt, size_t len) const</td></tr>
<tr class="memdesc:aac188a1e14a4f7807720f45e3aa30768"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decodes an elliptic curve point.  <a href="#aac188a1e14a4f7807720f45e3aa30768">More...</a><br /></td></tr>
<tr class="separator:aac188a1e14a4f7807720f45e3aa30768"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1d2920f888a7fb778fd4f468a464404"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#ac1d2920f888a7fb778fd4f468a464404">DecodePoint</a> (<a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, const byte *encodedPoint, size_t len) const</td></tr>
<tr class="memdesc:ac1d2920f888a7fb778fd4f468a464404"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decodes an elliptic curve point.  <a href="#ac1d2920f888a7fb778fd4f468a464404">More...</a><br /></td></tr>
<tr class="separator:ac1d2920f888a7fb778fd4f468a464404"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d0d3344902b48260d0b5dacca2073b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a4d0d3344902b48260d0b5dacca2073b1">EncodePoint</a> (byte *encodedPoint, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, bool compressed) const</td></tr>
<tr class="memdesc:a4d0d3344902b48260d0b5dacca2073b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes an elliptic curve point.  <a href="#a4d0d3344902b48260d0b5dacca2073b1">More...</a><br /></td></tr>
<tr class="separator:a4d0d3344902b48260d0b5dacca2073b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cf289c71b832211eddfb3b0608ebaab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a4cf289c71b832211eddfb3b0608ebaab">EncodePoint</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, bool compressed) const</td></tr>
<tr class="memdesc:a4cf289c71b832211eddfb3b0608ebaab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes an elliptic curve point.  <a href="#a4cf289c71b832211eddfb3b0608ebaab">More...</a><br /></td></tr>
<tr class="separator:a4cf289c71b832211eddfb3b0608ebaab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e97f700fa09b811ea9b0e91e3fbf88f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_e_c_p_point.html">Point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a9e97f700fa09b811ea9b0e91e3fbf88f">BERDecodePoint</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr>
<tr class="memdesc:a9e97f700fa09b811ea9b0e91e3fbf88f"><td class="mdescLeft">&#160;</td><td class="mdescRight">BER Decodes an elliptic curve point.  <a href="#a9e97f700fa09b811ea9b0e91e3fbf88f">More...</a><br /></td></tr>
<tr class="separator:a9e97f700fa09b811ea9b0e91e3fbf88f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ab1727c66563a593880d1fb3b595fb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_e_c_p.html#a6ab1727c66563a593880d1fb3b595fb5">DEREncodePoint</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt, const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;P, bool compressed) const</td></tr>
<tr class="memdesc:a6ab1727c66563a593880d1fb3b595fb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">DER Encodes an elliptic curve point.  <a href="#a6ab1727c66563a593880d1fb3b595fb5">More...</a><br /></td></tr>
<tr class="separator:a6ab1727c66563a593880d1fb3b595fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0c01cf1ebf788ba647fb8a076c6dcee"><td class="memItemLeft" align="right" valign="top"><a id="ab0c01cf1ebf788ba647fb8a076c6dcee"></a>
<a class="el" href="class_integer.html">Integer</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FieldSize</b> () const</td></tr>
<tr class="separator:ab0c01cf1ebf788ba647fb8a076c6dcee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae996fce212244df79b83a587317f7423"><td class="memItemLeft" align="right" valign="top"><a id="ae996fce212244df79b83a587317f7423"></a>
const <a class="el" href="class_modular_arithmetic.html">Field</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetField</b> () const</td></tr>
<tr class="separator:ae996fce212244df79b83a587317f7423"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64fd2b17f818ef8123185cd3363dc8f3"><td class="memItemLeft" align="right" valign="top"><a id="a64fd2b17f818ef8123185cd3363dc8f3"></a>
const <a class="el" href="class_integer.html">FieldElement</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetA</b> () const</td></tr>
<tr class="separator:a64fd2b17f818ef8123185cd3363dc8f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8117e5644de20cfa19a59372956649a4"><td class="memItemLeft" align="right" valign="top"><a id="a8117e5644de20cfa19a59372956649a4"></a>
const <a class="el" href="class_integer.html">FieldElement</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetB</b> () const</td></tr>
<tr class="separator:a8117e5644de20cfa19a59372956649a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bb9299daf0f8d551e11fad9766e7141"><td class="memItemLeft" align="right" valign="top"><a id="a4bb9299daf0f8d551e11fad9766e7141"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="class_e_c_p.html">ECP</a> &amp;rhs) const</td></tr>
<tr class="separator:a4bb9299daf0f8d551e11fad9766e7141"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_abstract_group"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_abstract_group')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_abstract_group.html">AbstractGroup&lt; ECPPoint &gt;</a></td></tr>
<tr class="memitem:aa19e1bef00198fb30eb01df3f7076717 inherit pub_methods_class_abstract_group"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_abstract_group.html#aa19e1bef00198fb30eb01df3f7076717">Subtract</a> (const <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;a, const <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;b) const</td></tr>
<tr class="memdesc:aa19e1bef00198fb30eb01df3f7076717 inherit pub_methods_class_abstract_group"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtracts elements in the group.  <a href="class_abstract_group.html#aa19e1bef00198fb30eb01df3f7076717">More...</a><br /></td></tr>
<tr class="separator:aa19e1bef00198fb30eb01df3f7076717 inherit pub_methods_class_abstract_group"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab03cc0a23f23c6aa1c003e11f9abb8c5 inherit pub_methods_class_abstract_group"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_abstract_group.html#ab03cc0a23f23c6aa1c003e11f9abb8c5">Accumulate</a> (<a class="el" href="struct_e_c_p_point.html">Element</a> &amp;a, const <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;b) const</td></tr>
<tr class="memdesc:ab03cc0a23f23c6aa1c003e11f9abb8c5 inherit pub_methods_class_abstract_group"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO.  <a href="class_abstract_group.html#ab03cc0a23f23c6aa1c003e11f9abb8c5">More...</a><br /></td></tr>
<tr class="separator:ab03cc0a23f23c6aa1c003e11f9abb8c5 inherit pub_methods_class_abstract_group"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40f7de55eddc193e07a7c3b5acad781a inherit pub_methods_class_abstract_group"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_abstract_group.html#a40f7de55eddc193e07a7c3b5acad781a">Reduce</a> (<a class="el" href="struct_e_c_p_point.html">Element</a> &amp;a, const <a class="el" href="struct_e_c_p_point.html">Element</a> &amp;b) const</td></tr>
<tr class="memdesc:a40f7de55eddc193e07a7c3b5acad781a inherit pub_methods_class_abstract_group"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduces an element in the congruence class.  <a href="class_abstract_group.html#a40f7de55eddc193e07a7c3b5acad781a">More...</a><br /></td></tr>
<tr class="separator:a40f7de55eddc193e07a7c3b5acad781a inherit pub_methods_class_abstract_group"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Elliptic Curve over GF(p), where p is prime. </p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00026">26</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a75052eac63ed5622c1e558852cd2d1a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75052eac63ed5622c1e558852cd2d1a4">&#9670;&nbsp;</a></span>ECP() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ECP::ECP </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_e_c_p.html">ECP</a> &amp;&#160;</td>
          <td class="paramname"><em>ecp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>convertToMontgomeryRepresentation</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Copy construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ecp</td><td>the other <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a> object </td></tr>
    <tr><td class="paramname">convertToMontgomeryRepresentation</td><td>flag indicating if the curve should be converted to a <a class="el" href="class_montgomery_representation.html" title="Performs modular arithmetic in Montgomery representation for increased speed.">MontgomeryRepresentation</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_modular_arithmetic.html" title="Ring of congruence classes modulo n.">ModularArithmetic</a>, <a class="el" href="class_montgomery_representation.html" title="Performs modular arithmetic in Montgomery representation for increased speed.">MontgomeryRepresentation</a> </dd></dl>

</div>
</div>
<a id="a7dbe4a90840d3b7cb23412a65414f4f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dbe4a90840d3b7cb23412a65414f4f5">&#9670;&nbsp;</a></span>ECP() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ECP::ECP </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_integer.html">Integer</a> &amp;&#160;</td>
          <td class="paramname"><em>modulus</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">FieldElement</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">FieldElement</a> &amp;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">modulus</td><td>the prime modulus </td></tr>
    <tr><td class="paramname">a</td><td>Field::Element </td></tr>
    <tr><td class="paramname">b</td><td>Field::Element </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00048">48</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="aa7f09fe942958b0b0933fa9a9a55fa6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa7f09fe942958b0b0933fa9a9a55fa6d">&#9670;&nbsp;</a></span>ECP() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ECP::ECP </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Construct an <a class="el" href="class_e_c_p.html" title="Elliptic Curve over GF(p), where p is prime.">ECP</a> from BER encoded parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bt</td><td><a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> derived object</td></tr>
  </table>
  </dd>
</dl>
<p>This constructor will decode and extract the the fields fieldID and curve of the sequence ECParameters </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad2a025bdb4caffe2ead28d3c4fee4c5a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2a025bdb4caffe2ead28d3c4fee4c5a">&#9670;&nbsp;</a></span>DEREncode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ECP::DEREncode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Encode the fields fieldID and curve of the sequence ECParameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bt</td><td><a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> derived object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a60fbeaa2294171f914f1e7c6ecda776e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60fbeaa2294171f914f1e7c6ecda776e">&#9670;&nbsp;</a></span>Equal()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ECP::Equal </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compare two elements for equality. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>first element </td></tr>
    <tr><td class="paramname">b</td><td>second element </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the elements are equal, false otherwise</dd></dl>
<p><a class="el" href="class_e_c_p.html#a60fbeaa2294171f914f1e7c6ecda776e" title="Compare two elements for equality.">Equal()</a> tests the elements for equality using <code>a==b</code> </p>

<p>Implements <a class="el" href="class_abstract_group.html#a0d72cb663566b7c056f846a561547bec">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a8a6ea0e6a710a7ff118ce5c9fa48c55e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a6ea0e6a710a7ff118ce5c9fa48c55e">&#9670;&nbsp;</a></span>Identity()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="struct_e_c_p_point.html">Point</a>&amp; ECP::Identity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Provides the Identity element. </p>
<dl class="section return"><dt>Returns</dt><dd>the Identity element </dd></dl>

<p>Implements <a class="el" href="class_abstract_group.html#a929ba4e6a7d7d80344946efad0456d5b">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a235a3931b7f4611fa7a1a3d5a95036ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a235a3931b7f4611fa7a1a3d5a95036ce">&#9670;&nbsp;</a></span>Inverse()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="struct_e_c_p_point.html">Point</a>&amp; ECP::Inverse </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inverts the element in the group. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>first element </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the inverse of the element </dd></dl>

<p>Implements <a class="el" href="class_abstract_group.html#ab22563bc0dcb544399d7e22b3589e165">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a0031a4a3a18999fda3942713da554697"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0031a4a3a18999fda3942713da554697">&#9670;&nbsp;</a></span>InversionIsFast()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ECP::InversionIsFast </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determine if inversion is fast. </p>
<dl class="section return"><dt>Returns</dt><dd>true if inversion is fast, false otherwise </dd></dl>

<p>Reimplemented from <a class="el" href="class_abstract_group.html#a257836994abefe25b80293f4c6b10f60">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00063">63</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="ae02a3946666ba03470a346270d6f8820"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae02a3946666ba03470a346270d6f8820">&#9670;&nbsp;</a></span>Add()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="struct_e_c_p_point.html">Point</a>&amp; ECP::Add </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds elements in the group. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>first element </td></tr>
    <tr><td class="paramname">b</td><td>second element </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the sum of <code>a</code> and <code>b</code> </dd></dl>

<p>Implements <a class="el" href="class_abstract_group.html#aa813430d9e4244de24c487d090eb5797">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a9528bc2c3075fff6c03e257846958497"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9528bc2c3075fff6c03e257846958497">&#9670;&nbsp;</a></span>Double()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="struct_e_c_p_point.html">Point</a>&amp; ECP::Double </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Doubles an element in the group. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>the element </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the element doubled </dd></dl>

<p>Reimplemented from <a class="el" href="class_abstract_group.html#afaceaf9c9c24606efc38d30fd8aff5ee">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a3a2b80bdd5e9c39229962c8b87e7023a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a2b80bdd5e9c39229962c8b87e7023a">&#9670;&nbsp;</a></span>ScalarMultiply()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_e_c_p_point.html">Point</a> ECP::ScalarMultiply </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">Integer</a> &amp;&#160;</td>
          <td class="paramname"><em>e</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Performs a scalar multiplication. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>multiplicand </td></tr>
    <tr><td class="paramname">e</td><td>multiplier </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the product </dd></dl>

<p>Reimplemented from <a class="el" href="class_abstract_group.html#ac01536b91c4fa3d0e0f929917143595b">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a905ca5e76a69b26efba70c46be3576fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a905ca5e76a69b26efba70c46be3576fb">&#9670;&nbsp;</a></span>CascadeScalarMultiply()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_e_c_p_point.html">Point</a> ECP::CascadeScalarMultiply </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">Integer</a> &amp;&#160;</td>
          <td class="paramname"><em>e1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">Integer</a> &amp;&#160;</td>
          <td class="paramname"><em>e2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>TODO. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>first multiplicand </td></tr>
    <tr><td class="paramname">e1</td><td>the first multiplier </td></tr>
    <tr><td class="paramname">y</td><td>second multiplicand </td></tr>
    <tr><td class="paramname">e2</td><td>the second multiplier </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>TODO </dd></dl>

<p>Reimplemented from <a class="el" href="class_abstract_group.html#a89bd24f1a83e62ac8cc5ad014cb5883e">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="af6f7bcfb3ff89c7d6ba1265640f95d03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6f7bcfb3ff89c7d6ba1265640f95d03">&#9670;&nbsp;</a></span>SimultaneousMultiply()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ECP::SimultaneousMultiply </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_e_c_p_point.html">Point</a> *&#160;</td>
          <td class="paramname"><em>results</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_integer.html">Integer</a> *&#160;</td>
          <td class="paramname"><em>exponents</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>exponentsCount</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Multiplies a base to multiple exponents in a group. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">results</td><td>an array of Elements </td></tr>
    <tr><td class="paramname">base</td><td>the base to raise to the exponents </td></tr>
    <tr><td class="paramname">exponents</td><td>an array of exponents </td></tr>
    <tr><td class="paramname">exponentsCount</td><td>the number of exponents in the array</td></tr>
  </table>
  </dd>
</dl>
<p><a class="el" href="class_e_c_p.html#af6f7bcfb3ff89c7d6ba1265640f95d03" title="Multiplies a base to multiple exponents in a group.">SimultaneousMultiply()</a> multiplies the base to each exponent in the exponents array and stores the result at the respective position in the results array.</p>
<p><a class="el" href="class_e_c_p.html#af6f7bcfb3ff89c7d6ba1265640f95d03" title="Multiplies a base to multiple exponents in a group.">SimultaneousMultiply()</a> must be implemented in a derived class. </p><dl class="section pre"><dt>Precondition</dt><dd><code><a class="el" href="misc_8h.html#a2d7e4464ea73d6393ebe78f952253426" title="Counts elements in an array.">COUNTOF(results)</a> == exponentsCount</code> </dd>
<dd>
<code><a class="el" href="misc_8h.html#a2d7e4464ea73d6393ebe78f952253426" title="Counts elements in an array.">COUNTOF(exponents)</a> == exponentsCount</code> </dd></dl>

<p>Reimplemented from <a class="el" href="class_abstract_group.html#a9c73ab688612e76786f43e311376eb8d">AbstractGroup&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a84825919705740161c1bd28b07cbd209"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84825919705740161c1bd28b07cbd209">&#9670;&nbsp;</a></span>VerifyPoint()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ECP::VerifyPoint </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Verifies points on elliptic curve. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">P</td><td>point to verify </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the point is valid, false otherwise </dd></dl>

<p>Implements <a class="el" href="class_encoded_point.html#a3811a1f1385f673a1663df614c87c001">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="aa8b38e2d453f1173923c6fd8e9880606"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8b38e2d453f1173923c6fd8e9880606">&#9670;&nbsp;</a></span>EncodedPointSize()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ECP::EncodedPointSize </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>compressed</em> = <code>false</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determines encoded point size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">compressed</td><td>flag indicating if the point is compressed </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the minimum number of bytes required to encode the point </dd></dl>

<p>Implements <a class="el" href="class_encoded_point.html#a1b4f38ed795723db0773af1b30874e46">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

<p class="definition">Definition at line <a class="el" href="ecp_8h_source.html#l00078">78</a> of file <a class="el" href="ecp_8h_source.html">ecp.h</a>.</p>

</div>
</div>
<a id="aac188a1e14a4f7807720f45e3aa30768"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac188a1e14a4f7807720f45e3aa30768">&#9670;&nbsp;</a></span>DecodePoint() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ECP::DecodePoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Decodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">P</td><td>point which is decoded </td></tr>
    <tr><td class="paramname">bt</td><td>source <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> </td></tr>
    <tr><td class="paramname">len</td><td>number of bytes to read from the <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if a point was decoded, false otherwise </dd></dl>

<p>Implements <a class="el" href="class_encoded_point.html#a844fcbf759f55bca8fc2ae13bda5569f">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="ac1d2920f888a7fb778fd4f468a464404"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac1d2920f888a7fb778fd4f468a464404">&#9670;&nbsp;</a></span>DecodePoint() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ECP::DecodePoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const byte *&#160;</td>
          <td class="paramname"><em>encodedPoint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Decodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">P</td><td>point which is decoded </td></tr>
    <tr><td class="paramname">encodedPoint</td><td>byte array with the encoded point </td></tr>
    <tr><td class="paramname">len</td><td>the size of the array </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if a point was decoded, false otherwise </dd></dl>

<p>Implements <a class="el" href="class_encoded_point.html#a0e51d9cd778655c08db4d63f1b58b09f">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a4d0d3344902b48260d0b5dacca2073b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d0d3344902b48260d0b5dacca2073b1">&#9670;&nbsp;</a></span>EncodePoint() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ECP::EncodePoint </td>
          <td>(</td>
          <td class="paramtype">byte *&#160;</td>
          <td class="paramname"><em>encodedPoint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>compressed</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Encodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">P</td><td>point which is decoded </td></tr>
    <tr><td class="paramname">encodedPoint</td><td>byte array for the encoded point </td></tr>
    <tr><td class="paramname">compressed</td><td>flag indicating if the point is compressed</td></tr>
  </table>
  </dd>
</dl>
<p><code>encodedPoint</code> must be at least <a class="el" href="class_e_c_p.html#aa8b38e2d453f1173923c6fd8e9880606" title="Determines encoded point size.">EncodedPointSize()</a> in length </p>

<p>Implements <a class="el" href="class_encoded_point.html#a38676be5408ca8d5b76864d0d05871cc">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a4cf289c71b832211eddfb3b0608ebaab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4cf289c71b832211eddfb3b0608ebaab">&#9670;&nbsp;</a></span>EncodePoint() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ECP::EncodePoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>compressed</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Encodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bt</td><td>target <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> </td></tr>
    <tr><td class="paramname">P</td><td>point which is encoded </td></tr>
    <tr><td class="paramname">compressed</td><td>flag indicating if the point is compressed </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="class_encoded_point.html#ad40e267748b7c3882b5e2940c6582877">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a9e97f700fa09b811ea9b0e91e3fbf88f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e97f700fa09b811ea9b0e91e3fbf88f">&#9670;&nbsp;</a></span>BERDecodePoint()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_e_c_p_point.html">Point</a> ECP::BERDecodePoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>BER Decodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bt</td><td>source <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the decoded elliptic curve point </dd></dl>

<p>Implements <a class="el" href="class_encoded_point.html#aeac00b790920c54c03fcec814c3d35a1">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<a id="a6ab1727c66563a593880d1fb3b595fb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ab1727c66563a593880d1fb3b595fb5">&#9670;&nbsp;</a></span>DEREncodePoint()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ECP::DEREncodePoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;&#160;</td>
          <td class="paramname"><em>bt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="struct_e_c_p_point.html">Point</a> &amp;&#160;</td>
          <td class="paramname"><em>P</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>compressed</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>DER Encodes an elliptic curve point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">bt</td><td>target <a class="el" href="class_buffered_transformation.html" title="Interface for buffered transformations.">BufferedTransformation</a> </td></tr>
    <tr><td class="paramname">P</td><td>point which is encoded </td></tr>
    <tr><td class="paramname">compressed</td><td>flag indicating if the point is compressed </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="class_encoded_point.html#a81265b6ace320959d2dbc13a4438fcc1">EncodedPoint&lt; ECPPoint &gt;</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ecp_8h_source.html">ecp.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Nov 27 2019 15:04:13 for Crypto++ by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>