blob: a308cc3fd618cf3db579c8e86bd21fb18ca6b086 [file] [log] [blame]
<!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>AMCL: ecp_HIFIVE.h File 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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">AMCL
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<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('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_df7310d1a865926cc859bcfb1880083f.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">ecp_HIFIVE.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>ECP Header File.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="fp__HIFIVE_8h_source.html">fp_HIFIVE.h</a>&quot;</code><br />
<code>#include &quot;config_curve_HIFIVE.h&quot;</code><br />
</div>
<p><a href="ecp__HIFIVE_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ECP structure - Elliptic Curve Point over base field. <a href="structECP__HIFIVE.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:afa8b83cb09ad101bcf9c3ed370fd2b9d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#afa8b83cb09ad101bcf9c3ed370fd2b9d">ECP_HIFIVE_isinf</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:afa8b83cb09ad101bcf9c3ed370fd2b9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for ECP point equal to infinity. <a href="#afa8b83cb09ad101bcf9c3ed370fd2b9d">More...</a><br /></td></tr>
<tr class="separator:afa8b83cb09ad101bcf9c3ed370fd2b9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4c48ae9b9285371ca1afb282b8f0d10"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#aa4c48ae9b9285371ca1afb282b8f0d10">ECP_HIFIVE_equals</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q)</td></tr>
<tr class="memdesc:aa4c48ae9b9285371ca1afb282b8f0d10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for equality of two ECPs. <a href="#aa4c48ae9b9285371ca1afb282b8f0d10">More...</a><br /></td></tr>
<tr class="separator:aa4c48ae9b9285371ca1afb282b8f0d10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55e6c595e26bc0928af5e9f73fc4c7ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a55e6c595e26bc0928af5e9f73fc4c7ee">ECP_HIFIVE_copy</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q)</td></tr>
<tr class="memdesc:a55e6c595e26bc0928af5e9f73fc4c7ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy ECP point to another ECP point. <a href="#a55e6c595e26bc0928af5e9f73fc4c7ee">More...</a><br /></td></tr>
<tr class="separator:a55e6c595e26bc0928af5e9f73fc4c7ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4be6c91460d3f8d91827abb8ba8f492"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ac4be6c91460d3f8d91827abb8ba8f492">ECP_HIFIVE_neg</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:ac4be6c91460d3f8d91827abb8ba8f492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Negation of an ECP point. <a href="#ac4be6c91460d3f8d91827abb8ba8f492">More...</a><br /></td></tr>
<tr class="separator:ac4be6c91460d3f8d91827abb8ba8f492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fe29b6e84b0898efef60cd11a9f55d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a8fe29b6e84b0898efef60cd11a9f55d7">ECP_HIFIVE_inf</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:a8fe29b6e84b0898efef60cd11a9f55d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point-at-infinity. <a href="#a8fe29b6e84b0898efef60cd11a9f55d7">More...</a><br /></td></tr>
<tr class="separator:a8fe29b6e84b0898efef60cd11a9f55d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a290923ff427e5a8c1268f550a3d2d079"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a290923ff427e5a8c1268f550a3d2d079">ECP_HIFIVE_rhs</a> (<a class="el" href="structFP__HIFIVE.html">FP_HIFIVE</a> *r, <a class="el" href="structFP__HIFIVE.html">FP_HIFIVE</a> *x)</td></tr>
<tr class="memdesc:a290923ff427e5a8c1268f550a3d2d079"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate Right Hand Side of curve equation y^2=f(x) <a href="#a290923ff427e5a8c1268f550a3d2d079">More...</a><br /></td></tr>
<tr class="separator:a290923ff427e5a8c1268f550a3d2d079"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18bb0427419f55a4ccbc2e439d4bc9ff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a18bb0427419f55a4ccbc2e439d4bc9ff">ECP_HIFIVE_set</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> x, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> y)</td></tr>
<tr class="memdesc:a18bb0427419f55a4ccbc2e439d4bc9ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point(x,y) given x and y. <a href="#a18bb0427419f55a4ccbc2e439d4bc9ff">More...</a><br /></td></tr>
<tr class="separator:a18bb0427419f55a4ccbc2e439d4bc9ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acff39fe3c485bb95400ac17adc0ae921"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#acff39fe3c485bb95400ac17adc0ae921">ECP_HIFIVE_get</a> (<a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> x, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> y, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:acff39fe3c485bb95400ac17adc0ae921"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extract x and y coordinates of an ECP point P. <a href="#acff39fe3c485bb95400ac17adc0ae921">More...</a><br /></td></tr>
<tr class="separator:acff39fe3c485bb95400ac17adc0ae921"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ca220e4a2b670d9e7373abf4713a16e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a2ca220e4a2b670d9e7373abf4713a16e">ECP_HIFIVE_add</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q)</td></tr>
<tr class="memdesc:a2ca220e4a2b670d9e7373abf4713a16e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds ECP instance Q to ECP instance P. <a href="#a2ca220e4a2b670d9e7373abf4713a16e">More...</a><br /></td></tr>
<tr class="separator:a2ca220e4a2b670d9e7373abf4713a16e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2191fc8b76127ddca3a3f44f258217b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ab2191fc8b76127ddca3a3f44f258217b">ECP_HIFIVE_sub</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q)</td></tr>
<tr class="memdesc:ab2191fc8b76127ddca3a3f44f258217b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtracts ECP instance Q from ECP instance P. <a href="#ab2191fc8b76127ddca3a3f44f258217b">More...</a><br /></td></tr>
<tr class="separator:ab2191fc8b76127ddca3a3f44f258217b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24f495ae0894910212e136f298185f6d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a24f495ae0894910212e136f298185f6d">ECP_HIFIVE_setx</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> x, int s)</td></tr>
<tr class="memdesc:a24f495ae0894910212e136f298185f6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point(x,y) given just x and sign of y. <a href="#a24f495ae0894910212e136f298185f6d">More...</a><br /></td></tr>
<tr class="separator:a24f495ae0894910212e136f298185f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6ccb26b7d3ee9493002059c72eb5509"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ae6ccb26b7d3ee9493002059c72eb5509">ECP_HIFIVE_cfp</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q)</td></tr>
<tr class="memdesc:ae6ccb26b7d3ee9493002059c72eb5509"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies Point by curve co-factor. <a href="#ae6ccb26b7d3ee9493002059c72eb5509">More...</a><br /></td></tr>
<tr class="separator:ae6ccb26b7d3ee9493002059c72eb5509"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebec3e18218639d85bf4e18e79b6e2e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#aebec3e18218639d85bf4e18e79b6e2e7">ECP_HIFIVE_mapit</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q, <a class="el" href="structoctet.html">octet</a> *w)</td></tr>
<tr class="memdesc:aebec3e18218639d85bf4e18e79b6e2e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps random BIG to curve point of correct order. <a href="#aebec3e18218639d85bf4e18e79b6e2e7">More...</a><br /></td></tr>
<tr class="separator:aebec3e18218639d85bf4e18e79b6e2e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a221832402b27cdbead56091132d764c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a221832402b27cdbead56091132d764c9">ECP_HIFIVE_affine</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:a221832402b27cdbead56091132d764c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an ECP point from Projective (x,y,z) coordinates to affine (x,y) coordinates. <a href="#a221832402b27cdbead56091132d764c9">More...</a><br /></td></tr>
<tr class="separator:a221832402b27cdbead56091132d764c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a829e28318f6137c5885ce26e95b4e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a6a829e28318f6137c5885ce26e95b4e0">ECP_HIFIVE_outputxyz</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:a6a829e28318f6137c5885ce26e95b4e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console, in projective coordinates. <a href="#a6a829e28318f6137c5885ce26e95b4e0">More...</a><br /></td></tr>
<tr class="separator:a6a829e28318f6137c5885ce26e95b4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fbbf22c54925b75dfb1294e721bdc26"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a8fbbf22c54925b75dfb1294e721bdc26">ECP_HIFIVE_output</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:a8fbbf22c54925b75dfb1294e721bdc26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console, converted to affine coordinates. <a href="#a8fbbf22c54925b75dfb1294e721bdc26">More...</a><br /></td></tr>
<tr class="separator:a8fbbf22c54925b75dfb1294e721bdc26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a879eff59992ff736aeeb77f6c18d8d73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a879eff59992ff736aeeb77f6c18d8d73">ECP_HIFIVE_rawoutput</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:a879eff59992ff736aeeb77f6c18d8d73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console. <a href="#a879eff59992ff736aeeb77f6c18d8d73">More...</a><br /></td></tr>
<tr class="separator:a879eff59992ff736aeeb77f6c18d8d73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a030a05c90904d40cd6cedd12ccb929f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a030a05c90904d40cd6cedd12ccb929f7">ECP_HIFIVE_toOctet</a> (<a class="el" href="structoctet.html">octet</a> *S, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, bool c)</td></tr>
<tr class="memdesc:a030a05c90904d40cd6cedd12ccb929f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to an octet string The octet string is normally in the standard form 0x04|x|y Here x (and y) are the x and y coordinates in left justified big-endian base 256 form. For Montgomery curve it is 0x06|x If c is true, only the x coordinate is provided as in 0x2|x if y is even, or 0x3|x if y is odd. <a href="#a030a05c90904d40cd6cedd12ccb929f7">More...</a><br /></td></tr>
<tr class="separator:a030a05c90904d40cd6cedd12ccb929f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ab725076a380f3ef544be3297910f7d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a1ab725076a380f3ef544be3297910f7d">ECP_HIFIVE_fromOctet</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structoctet.html">octet</a> *S)</td></tr>
<tr class="memdesc:a1ab725076a380f3ef544be3297910f7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an ECP point from an octet string. <a href="#a1ab725076a380f3ef544be3297910f7d">More...</a><br /></td></tr>
<tr class="separator:a1ab725076a380f3ef544be3297910f7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4fda84a3c5cd7496897523fd082f48c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ac4fda84a3c5cd7496897523fd082f48c">ECP_HIFIVE_dbl</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P)</td></tr>
<tr class="memdesc:ac4fda84a3c5cd7496897523fd082f48c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Doubles an ECP instance P. <a href="#ac4fda84a3c5cd7496897523fd082f48c">More...</a><br /></td></tr>
<tr class="separator:ac4fda84a3c5cd7496897523fd082f48c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ea39d86187fd3a798f187f9755ba358"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a5ea39d86187fd3a798f187f9755ba358">ECP_HIFIVE_pinmul</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, int i, int b)</td></tr>
<tr class="memdesc:a5ea39d86187fd3a798f187f9755ba358"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies an ECP instance P by a small integer, side-channel resistant. <a href="#a5ea39d86187fd3a798f187f9755ba358">More...</a><br /></td></tr>
<tr class="separator:a5ea39d86187fd3a798f187f9755ba358"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d129b7127737c9d6d9be032c35ef4fe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a6d129b7127737c9d6d9be032c35ef4fe">ECP_HIFIVE_mul</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> b)</td></tr>
<tr class="memdesc:a6d129b7127737c9d6d9be032c35ef4fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies an ECP instance P by a BIG, side-channel resistant. <a href="#a6d129b7127737c9d6d9be032c35ef4fe">More...</a><br /></td></tr>
<tr class="separator:a6d129b7127737c9d6d9be032c35ef4fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36f197304b2c2f7417b57c951a6417c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a36f197304b2c2f7417b57c951a6417c7">ECP_HIFIVE_mul2</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *P, <a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *Q, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> e, <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> f)</td></tr>
<tr class="memdesc:a36f197304b2c2f7417b57c951a6417c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates double multiplication P=e*P+f*Q, side-channel resistant. <a href="#a36f197304b2c2f7417b57c951a6417c7">More...</a><br /></td></tr>
<tr class="separator:a36f197304b2c2f7417b57c951a6417c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a776dd8b8cd10fda34d36ba1d513b98d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a776dd8b8cd10fda34d36ba1d513b98d8">ECP_HIFIVE_generator</a> (<a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *G)</td></tr>
<tr class="memdesc:a776dd8b8cd10fda34d36ba1d513b98d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Group Generator from ROM. <a href="#a776dd8b8cd10fda34d36ba1d513b98d8">More...</a><br /></td></tr>
<tr class="separator:a776dd8b8cd10fda34d36ba1d513b98d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ae620c16ddb209aa82bc0f319e2ed708e"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ae620c16ddb209aa82bc0f319e2ed708e">CURVE_A_HIFIVE</a></td></tr>
<tr class="separator:ae620c16ddb209aa82bc0f319e2ed708e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8762609bc82d433fe57c6f4051866919"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a8762609bc82d433fe57c6f4051866919">CURVE_Cof_I_HIFIVE</a></td></tr>
<tr class="separator:a8762609bc82d433fe57c6f4051866919"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad63f36eaac33cc323b85647d90ae1a81"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ad63f36eaac33cc323b85647d90ae1a81">CURVE_B_I_HIFIVE</a></td></tr>
<tr class="separator:ad63f36eaac33cc323b85647d90ae1a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21f4a879c61e792648bdcde8ab3c52af"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a21f4a879c61e792648bdcde8ab3c52af">CURVE_B_HIFIVE</a></td></tr>
<tr class="separator:a21f4a879c61e792648bdcde8ab3c52af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1dc9e181294d176676efbddd43db295"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ad1dc9e181294d176676efbddd43db295">CURVE_Order_HIFIVE</a></td></tr>
<tr class="separator:ad1dc9e181294d176676efbddd43db295"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0bcdc5403d7100b029fefc09ebed33e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ab0bcdc5403d7100b029fefc09ebed33e">CURVE_Cof_HIFIVE</a></td></tr>
<tr class="separator:ab0bcdc5403d7100b029fefc09ebed33e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4850c3c6a65abf270f9ca3304efdbb56"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a4850c3c6a65abf270f9ca3304efdbb56">CURVE_Gx_HIFIVE</a></td></tr>
<tr class="separator:a4850c3c6a65abf270f9ca3304efdbb56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c11ec6fa23ca04ef0476fb8bce7835c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a5c11ec6fa23ca04ef0476fb8bce7835c">CURVE_Gy_HIFIVE</a></td></tr>
<tr class="separator:a5c11ec6fa23ca04ef0476fb8bce7835c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a422f2011630d73e0d96911c714643438"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a422f2011630d73e0d96911c714643438">CURVE_Pxa_HIFIVE</a></td></tr>
<tr class="separator:a422f2011630d73e0d96911c714643438"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05a75633390b287e5bb467cdf87a1c6c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a05a75633390b287e5bb467cdf87a1c6c">CURVE_Pxb_HIFIVE</a></td></tr>
<tr class="separator:a05a75633390b287e5bb467cdf87a1c6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a091efa01b77c6174ec332c30a8c9835b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a091efa01b77c6174ec332c30a8c9835b">CURVE_Pya_HIFIVE</a></td></tr>
<tr class="separator:a091efa01b77c6174ec332c30a8c9835b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87135593f86851ea9eb43282a89221a1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a87135593f86851ea9eb43282a89221a1">CURVE_Pyb_HIFIVE</a></td></tr>
<tr class="separator:a87135593f86851ea9eb43282a89221a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7db564db8b731dcf79f0dc0f52321902"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a7db564db8b731dcf79f0dc0f52321902">CURVE_Pxaa_HIFIVE</a></td></tr>
<tr class="separator:a7db564db8b731dcf79f0dc0f52321902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5377a2e6f55301bcd55b65b44ccf89c3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a5377a2e6f55301bcd55b65b44ccf89c3">CURVE_Pxab_HIFIVE</a></td></tr>
<tr class="separator:a5377a2e6f55301bcd55b65b44ccf89c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d3541b5bd13411557e0f05158eadbe7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a7d3541b5bd13411557e0f05158eadbe7">CURVE_Pxba_HIFIVE</a></td></tr>
<tr class="separator:a7d3541b5bd13411557e0f05158eadbe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb3d0325ce3047847f3c998b39622cd1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#adb3d0325ce3047847f3c998b39622cd1">CURVE_Pxbb_HIFIVE</a></td></tr>
<tr class="separator:adb3d0325ce3047847f3c998b39622cd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dd8f24607c4cd3521026f94676369fd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a7dd8f24607c4cd3521026f94676369fd">CURVE_Pyaa_HIFIVE</a></td></tr>
<tr class="separator:a7dd8f24607c4cd3521026f94676369fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8392919afca421f7d8cf6144591e8072"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a8392919afca421f7d8cf6144591e8072">CURVE_Pyab_HIFIVE</a></td></tr>
<tr class="separator:a8392919afca421f7d8cf6144591e8072"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab482fd6cf91d98bfb3cfd96966206a95"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ab482fd6cf91d98bfb3cfd96966206a95">CURVE_Pyba_HIFIVE</a></td></tr>
<tr class="separator:ab482fd6cf91d98bfb3cfd96966206a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aacc3f63e392a854d2c4e2e300146e2d5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#aacc3f63e392a854d2c4e2e300146e2d5">CURVE_Pybb_HIFIVE</a></td></tr>
<tr class="separator:aacc3f63e392a854d2c4e2e300146e2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afffb5603ae41877535be7fd320205751"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#afffb5603ae41877535be7fd320205751">CURVE_Pxaaa_HIFIVE</a></td></tr>
<tr class="separator:afffb5603ae41877535be7fd320205751"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33c7560c667dd5f09f91ee72855f121f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a33c7560c667dd5f09f91ee72855f121f">CURVE_Pxaab_HIFIVE</a></td></tr>
<tr class="separator:a33c7560c667dd5f09f91ee72855f121f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b04f68fe5e5a53987d6cfa5601194d3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a4b04f68fe5e5a53987d6cfa5601194d3">CURVE_Pxaba_HIFIVE</a></td></tr>
<tr class="separator:a4b04f68fe5e5a53987d6cfa5601194d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbda249241c4ad90404a35d0320fe74b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#adbda249241c4ad90404a35d0320fe74b">CURVE_Pxabb_HIFIVE</a></td></tr>
<tr class="separator:adbda249241c4ad90404a35d0320fe74b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77e65fa2342406ef44606478156c79be"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a77e65fa2342406ef44606478156c79be">CURVE_Pxbaa_HIFIVE</a></td></tr>
<tr class="separator:a77e65fa2342406ef44606478156c79be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77377da01bebd9a1fd0e15c04fcad3b8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a77377da01bebd9a1fd0e15c04fcad3b8">CURVE_Pxbab_HIFIVE</a></td></tr>
<tr class="separator:a77377da01bebd9a1fd0e15c04fcad3b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5fdd8685f337c7fd76e4cd46752caaa"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ac5fdd8685f337c7fd76e4cd46752caaa">CURVE_Pxbba_HIFIVE</a></td></tr>
<tr class="separator:ac5fdd8685f337c7fd76e4cd46752caaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4af897d7bdf2900af95f2dce5a93e1bf"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a4af897d7bdf2900af95f2dce5a93e1bf">CURVE_Pxbbb_HIFIVE</a></td></tr>
<tr class="separator:a4af897d7bdf2900af95f2dce5a93e1bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71cfe2594508f44f00e274c2e1253a77"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a71cfe2594508f44f00e274c2e1253a77">CURVE_Pyaaa_HIFIVE</a></td></tr>
<tr class="separator:a71cfe2594508f44f00e274c2e1253a77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4329aff753b5af29395f4c3c56f618a4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a4329aff753b5af29395f4c3c56f618a4">CURVE_Pyaab_HIFIVE</a></td></tr>
<tr class="separator:a4329aff753b5af29395f4c3c56f618a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5ac79dc920d00f4e270a4bd7705da44"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ae5ac79dc920d00f4e270a4bd7705da44">CURVE_Pyaba_HIFIVE</a></td></tr>
<tr class="separator:ae5ac79dc920d00f4e270a4bd7705da44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad777db96604e1c58440a0bd9b67556b1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ad777db96604e1c58440a0bd9b67556b1">CURVE_Pyabb_HIFIVE</a></td></tr>
<tr class="separator:ad777db96604e1c58440a0bd9b67556b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dffcb3d7101ebbcc7d72997844f7aa0"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a2dffcb3d7101ebbcc7d72997844f7aa0">CURVE_Pybaa_HIFIVE</a></td></tr>
<tr class="separator:a2dffcb3d7101ebbcc7d72997844f7aa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a559f89cfb04b300d92fe01a184bc30"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a2a559f89cfb04b300d92fe01a184bc30">CURVE_Pybab_HIFIVE</a></td></tr>
<tr class="separator:a2a559f89cfb04b300d92fe01a184bc30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52c7d8854fa476b22bcdf767227a6a7a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a52c7d8854fa476b22bcdf767227a6a7a">CURVE_Pybba_HIFIVE</a></td></tr>
<tr class="separator:a52c7d8854fa476b22bcdf767227a6a7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a442203cbcaff4fd9680f2b53ef478de3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a442203cbcaff4fd9680f2b53ef478de3">CURVE_Pybbb_HIFIVE</a></td></tr>
<tr class="separator:a442203cbcaff4fd9680f2b53ef478de3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2652b262d0ad51718a808b215842f3ff"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a2652b262d0ad51718a808b215842f3ff">CURVE_Bnx_HIFIVE</a></td></tr>
<tr class="separator:a2652b262d0ad51718a808b215842f3ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04200098611b2accbd7887999f6b3aae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a04200098611b2accbd7887999f6b3aae">CURVE_Cru_HIFIVE</a></td></tr>
<tr class="separator:a04200098611b2accbd7887999f6b3aae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e08590457946990faedde13bdeb66c6"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a4e08590457946990faedde13bdeb66c6">Fra_HIFIVE</a></td></tr>
<tr class="separator:a4e08590457946990faedde13bdeb66c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0283670d2c6ff13b2855b7c692966222"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a0283670d2c6ff13b2855b7c692966222">Frb_HIFIVE</a></td></tr>
<tr class="separator:a0283670d2c6ff13b2855b7c692966222"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad9912664fa37db8efab7842ba9105c1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#aad9912664fa37db8efab7842ba9105c1">CURVE_W_HIFIVE</a> [2]</td></tr>
<tr class="separator:aad9912664fa37db8efab7842ba9105c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a096cae2d374f876bda8dd2ae4dc84754"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a096cae2d374f876bda8dd2ae4dc84754">CURVE_SB_HIFIVE</a> [2][2]</td></tr>
<tr class="separator:a096cae2d374f876bda8dd2ae4dc84754"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2b27b1453706b46b5a93f19ac62761f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#ab2b27b1453706b46b5a93f19ac62761f">CURVE_WB_HIFIVE</a> [4]</td></tr>
<tr class="separator:ab2b27b1453706b46b5a93f19ac62761f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70ace3235321f12a5455d0fc72a8d543"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__HIFIVE_8h.html#a70ace3235321f12a5455d0fc72a8d543">CURVE_BB_HIFIVE</a> [4][4]</td></tr>
<tr class="separator:a70ace3235321f12a5455d0fc72a8d543"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section author"><dt>Author</dt><dd>Mike Scott </dd></dl>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a2ca220e4a2b670d9e7373abf4713a16e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ca220e4a2b670d9e7373abf4713a16e">&#9670;&nbsp;</a></span>ECP_HIFIVE_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =P+Q </td></tr>
<tr><td class="paramname">Q</td><td>ECP instance to be added to P </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a221832402b27cdbead56091132d764c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a221832402b27cdbead56091132d764c9">&#9670;&nbsp;</a></span>ECP_HIFIVE_affine()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_affine </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be converted to affine form </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae6ccb26b7d3ee9493002059c72eb5509"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6ccb26b7d3ee9493002059c72eb5509">&#9670;&nbsp;</a></span>ECP_HIFIVE_cfp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_cfp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">Q</td><td>ECP instance </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a55e6c595e26bc0928af5e9f73fc4c7ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55e6c595e26bc0928af5e9f73fc4c7ee">&#9670;&nbsp;</a></span>ECP_HIFIVE_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit = Q </td></tr>
<tr><td class="paramname">Q</td><td>ECP instance to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac4fda84a3c5cd7496897523fd082f48c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4fda84a3c5cd7496897523fd082f48c">&#9670;&nbsp;</a></span>ECP_HIFIVE_dbl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_dbl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =2*P </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa4c48ae9b9285371ca1afb282b8f0d10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4c48ae9b9285371ca1afb282b8f0d10">&#9670;&nbsp;</a></span>ECP_HIFIVE_equals()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_equals </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be compared </td></tr>
<tr><td class="paramname">Q</td><td>ECP instance to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if P=Q, else returns 0 </dd></dl>
</div>
</div>
<a id="a1ab725076a380f3ef544be3297910f7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ab725076a380f3ef544be3297910f7d">&#9670;&nbsp;</a></span>ECP_HIFIVE_fromOctet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_fromOctet </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structoctet.html">octet</a> *&#160;</td>
<td class="paramname"><em>S</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The octet string is normally in the standard form 0x04|x|y Here x (and y) are the x and y coordinates in left justified big-endian base 256 form. For Montgomery curve it is 0x06|x If in compressed form only the x coordinate is provided as in 0x2|x if y is even, or 0x3|x if y is odd </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be created from the octet string </td></tr>
<tr><td class="paramname">S</td><td>input octet string return 1 if octet string corresponds to a point on the curve, else 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a776dd8b8cd10fda34d36ba1d513b98d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a776dd8b8cd10fda34d36ba1d513b98d8">&#9670;&nbsp;</a></span>ECP_HIFIVE_generator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_generator </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>G</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">G</td><td>ECP instance </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acff39fe3c485bb95400ac17adc0ae921"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acff39fe3c485bb95400ac17adc0ae921">&#9670;&nbsp;</a></span>ECP_HIFIVE_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>If x=y, returns only x </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG on exit = x coordinate of point </td></tr>
<tr><td class="paramname">y</td><td>BIG on exit = y coordinate of point (unless x=y) </td></tr>
<tr><td class="paramname">P</td><td>ECP instance (x,y) </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>sign of y, or -1 if P is point-at-infinity </dd></dl>
</div>
</div>
<a id="a8fe29b6e84b0898efef60cd11a9f55d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fe29b6e84b0898efef60cd11a9f55d7">&#9670;&nbsp;</a></span>ECP_HIFIVE_inf()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_inf </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be set to infinity </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="afa8b83cb09ad101bcf9c3ed370fd2b9d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa8b83cb09ad101bcf9c3ed370fd2b9d">&#9670;&nbsp;</a></span>ECP_HIFIVE_isinf()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_isinf </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP point to be tested </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if infinity, else returns 0 </dd></dl>
</div>
</div>
<a id="aebec3e18218639d85bf4e18e79b6e2e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebec3e18218639d85bf4e18e79b6e2e7">&#9670;&nbsp;</a></span>ECP_HIFIVE_mapit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_mapit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structoctet.html">octet</a> *&#160;</td>
<td class="paramname"><em>w</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">Q</td><td>ECP instance of correct order </td></tr>
<tr><td class="paramname">w</td><td>OCTET byte array to be mapped </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6d129b7127737c9d6d9be032c35ef4fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d129b7127737c9d6d9be032c35ef4fe">&#9670;&nbsp;</a></span>ECP_HIFIVE_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>b</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Uses Montgomery ladder for Montgomery curves, otherwise fixed sized windows. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =b*P </td></tr>
<tr><td class="paramname">b</td><td>BIG number multiplier </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a36f197304b2c2f7417b57c951a6417c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36f197304b2c2f7417b57c951a6417c7">&#9670;&nbsp;</a></span>ECP_HIFIVE_mul2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_mul2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>e</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>f</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =e*P+f*Q </td></tr>
<tr><td class="paramname">Q</td><td>ECP instance </td></tr>
<tr><td class="paramname">e</td><td>BIG number multiplier </td></tr>
<tr><td class="paramname">f</td><td>BIG number multiplier </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac4be6c91460d3f8d91827abb8ba8f492"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4be6c91460d3f8d91827abb8ba8f492">&#9670;&nbsp;</a></span>ECP_HIFIVE_neg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_neg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit = -P </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a8fbbf22c54925b75dfb1294e721bdc26"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fbbf22c54925b75dfb1294e721bdc26">&#9670;&nbsp;</a></span>ECP_HIFIVE_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be printed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6a829e28318f6137c5885ce26e95b4e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a829e28318f6137c5885ce26e95b4e0">&#9670;&nbsp;</a></span>ECP_HIFIVE_outputxyz()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_outputxyz </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be printed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a5ea39d86187fd3a798f187f9755ba358"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ea39d86187fd3a798f187f9755ba358">&#9670;&nbsp;</a></span>ECP_HIFIVE_pinmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_pinmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>b</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =i*P </td></tr>
<tr><td class="paramname">i</td><td>small integer multiplier </td></tr>
<tr><td class="paramname">b</td><td>maximum number of bits in multiplier </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a879eff59992ff736aeeb77f6c18d8d73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a879eff59992ff736aeeb77f6c18d8d73">&#9670;&nbsp;</a></span>ECP_HIFIVE_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be printed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a290923ff427e5a8c1268f550a3d2d079"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a290923ff427e5a8c1268f550a3d2d079">&#9670;&nbsp;</a></span>ECP_HIFIVE_rhs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_rhs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structFP__HIFIVE.html">FP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structFP__HIFIVE.html">FP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Function f(x) depends on form of elliptic curve, Weierstrass, Edwards or Montgomery. Used internally. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">r</td><td>BIG n-residue value of f(x) </td></tr>
<tr><td class="paramname">x</td><td>BIG n-residue x </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a18bb0427419f55a4ccbc2e439d4bc9ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18bb0427419f55a4ccbc2e439d4bc9ff">&#9670;&nbsp;</a></span>ECP_HIFIVE_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_set </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Point P set to infinity if no such point on the curve. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be set (x,y) </td></tr>
<tr><td class="paramname">x</td><td>BIG x coordinate of point </td></tr>
<tr><td class="paramname">y</td><td>BIG y coordinate of point </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if point exists, else 0 </dd></dl>
</div>
</div>
<a id="a24f495ae0894910212e136f298185f6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24f495ae0894910212e136f298185f6d">&#9670;&nbsp;</a></span>ECP_HIFIVE_setx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_HIFIVE_setx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Point P set to infinity if no such point on the curve. If x is on the curve then y is calculated from the curve equation. The correct y value (plus or minus) is selected given its sign s. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance to be set (x,[y]) </td></tr>
<tr><td class="paramname">x</td><td>BIG x coordinate of point </td></tr>
<tr><td class="paramname">s</td><td>an integer representing the "sign" of y, in fact its least significant bit. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab2191fc8b76127ddca3a3f44f258217b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2191fc8b76127ddca3a3f44f258217b">&#9670;&nbsp;</a></span>ECP_HIFIVE_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>P</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#160;</td>
<td class="paramname"><em>Q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">P</td><td>ECP instance, on exit =P-Q </td></tr>
<tr><td class="paramname">Q</td><td>ECP instance to be subtracted from P </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a030a05c90904d40cd6cedd12ccb929f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a030a05c90904d40cd6cedd12ccb929f7">&#9670;&nbsp;</a></span>ECP_HIFIVE_toOctet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_HIFIVE_toOctet </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structoctet.html">octet</a> *&#160;</td>
<td class="paramname"><em>S</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structECP__HIFIVE.html">ECP_HIFIVE</a> *&#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>c</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">c</td><td>compression required, true or false </td></tr>
<tr><td class="paramname">S</td><td>output octet string </td></tr>
<tr><td class="paramname">P</td><td>ECP instance to be converted to an octet string </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="ae620c16ddb209aa82bc0f319e2ed708e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae620c16ddb209aa82bc0f319e2ed708e">&#9670;&nbsp;</a></span>CURVE_A_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_A_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve A parameter </p>
</div>
</div>
<a id="a21f4a879c61e792648bdcde8ab3c52af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21f4a879c61e792648bdcde8ab3c52af">&#9670;&nbsp;</a></span>CURVE_B_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_B_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve B parameter </p>
</div>
</div>
<a id="ad63f36eaac33cc323b85647d90ae1a81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad63f36eaac33cc323b85647d90ae1a81">&#9670;&nbsp;</a></span>CURVE_B_I_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_B_I_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve B_i parameter </p>
</div>
</div>
<a id="a70ace3235321f12a5455d0fc72a8d543"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70ace3235321f12a5455d0fc72a8d543">&#9670;&nbsp;</a></span>CURVE_BB_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_BB_HIFIVE[4][4]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GS decomposition </p>
</div>
</div>
<a id="a2652b262d0ad51718a808b215842f3ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2652b262d0ad51718a808b215842f3ff">&#9670;&nbsp;</a></span>CURVE_Bnx_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Bnx_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve x parameter </p>
</div>
</div>
<a id="ab0bcdc5403d7100b029fefc09ebed33e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab0bcdc5403d7100b029fefc09ebed33e">&#9670;&nbsp;</a></span>CURVE_Cof_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Cof_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve cofactor </p>
</div>
</div>
<a id="a8762609bc82d433fe57c6f4051866919"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8762609bc82d433fe57c6f4051866919">&#9670;&nbsp;</a></span>CURVE_Cof_I_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_Cof_I_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve cofactor </p>
</div>
</div>
<a id="a04200098611b2accbd7887999f6b3aae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04200098611b2accbd7887999f6b3aae">&#9670;&nbsp;</a></span>CURVE_Cru_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Cru_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve Cube Root of Unity </p>
</div>
</div>
<a id="a4850c3c6a65abf270f9ca3304efdbb56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4850c3c6a65abf270f9ca3304efdbb56">&#9670;&nbsp;</a></span>CURVE_Gx_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Gx_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>x-coordinate of generator point in group G1 </p>
</div>
</div>
<a id="a5c11ec6fa23ca04ef0476fb8bce7835c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c11ec6fa23ca04ef0476fb8bce7835c">&#9670;&nbsp;</a></span>CURVE_Gy_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Gy_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>y-coordinate of generator point in group G1 </p>
</div>
</div>
<a id="ad1dc9e181294d176676efbddd43db295"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1dc9e181294d176676efbddd43db295">&#9670;&nbsp;</a></span>CURVE_Order_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Order_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve group order </p>
</div>
</div>
<a id="a422f2011630d73e0d96911c714643438"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a422f2011630d73e0d96911c714643438">&#9670;&nbsp;</a></span>CURVE_Pxa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7db564db8b731dcf79f0dc0f52321902"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7db564db8b731dcf79f0dc0f52321902">&#9670;&nbsp;</a></span>CURVE_Pxaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="afffb5603ae41877535be7fd320205751"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afffb5603ae41877535be7fd320205751">&#9670;&nbsp;</a></span>CURVE_Pxaaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxaaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a33c7560c667dd5f09f91ee72855f121f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a33c7560c667dd5f09f91ee72855f121f">&#9670;&nbsp;</a></span>CURVE_Pxaab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxaab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a5377a2e6f55301bcd55b65b44ccf89c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5377a2e6f55301bcd55b65b44ccf89c3">&#9670;&nbsp;</a></span>CURVE_Pxab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a4b04f68fe5e5a53987d6cfa5601194d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b04f68fe5e5a53987d6cfa5601194d3">&#9670;&nbsp;</a></span>CURVE_Pxaba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxaba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="adbda249241c4ad90404a35d0320fe74b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbda249241c4ad90404a35d0320fe74b">&#9670;&nbsp;</a></span>CURVE_Pxabb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxabb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a05a75633390b287e5bb467cdf87a1c6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05a75633390b287e5bb467cdf87a1c6c">&#9670;&nbsp;</a></span>CURVE_Pxb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7d3541b5bd13411557e0f05158eadbe7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d3541b5bd13411557e0f05158eadbe7">&#9670;&nbsp;</a></span>CURVE_Pxba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a77e65fa2342406ef44606478156c79be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77e65fa2342406ef44606478156c79be">&#9670;&nbsp;</a></span>CURVE_Pxbaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxbaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a77377da01bebd9a1fd0e15c04fcad3b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77377da01bebd9a1fd0e15c04fcad3b8">&#9670;&nbsp;</a></span>CURVE_Pxbab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxbab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="adb3d0325ce3047847f3c998b39622cd1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb3d0325ce3047847f3c998b39622cd1">&#9670;&nbsp;</a></span>CURVE_Pxbb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxbb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ac5fdd8685f337c7fd76e4cd46752caaa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5fdd8685f337c7fd76e4cd46752caaa">&#9670;&nbsp;</a></span>CURVE_Pxbba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxbba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a4af897d7bdf2900af95f2dce5a93e1bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4af897d7bdf2900af95f2dce5a93e1bf">&#9670;&nbsp;</a></span>CURVE_Pxbbb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pxbbb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a091efa01b77c6174ec332c30a8c9835b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a091efa01b77c6174ec332c30a8c9835b">&#9670;&nbsp;</a></span>CURVE_Pya_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pya_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7dd8f24607c4cd3521026f94676369fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dd8f24607c4cd3521026f94676369fd">&#9670;&nbsp;</a></span>CURVE_Pyaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a71cfe2594508f44f00e274c2e1253a77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71cfe2594508f44f00e274c2e1253a77">&#9670;&nbsp;</a></span>CURVE_Pyaaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyaaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a4329aff753b5af29395f4c3c56f618a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4329aff753b5af29395f4c3c56f618a4">&#9670;&nbsp;</a></span>CURVE_Pyaab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyaab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a8392919afca421f7d8cf6144591e8072"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8392919afca421f7d8cf6144591e8072">&#9670;&nbsp;</a></span>CURVE_Pyab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ae5ac79dc920d00f4e270a4bd7705da44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae5ac79dc920d00f4e270a4bd7705da44">&#9670;&nbsp;</a></span>CURVE_Pyaba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyaba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ad777db96604e1c58440a0bd9b67556b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad777db96604e1c58440a0bd9b67556b1">&#9670;&nbsp;</a></span>CURVE_Pyabb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyabb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a87135593f86851ea9eb43282a89221a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87135593f86851ea9eb43282a89221a1">&#9670;&nbsp;</a></span>CURVE_Pyb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ab482fd6cf91d98bfb3cfd96966206a95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab482fd6cf91d98bfb3cfd96966206a95">&#9670;&nbsp;</a></span>CURVE_Pyba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pyba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a2dffcb3d7101ebbcc7d72997844f7aa0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2dffcb3d7101ebbcc7d72997844f7aa0">&#9670;&nbsp;</a></span>CURVE_Pybaa_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pybaa_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a2a559f89cfb04b300d92fe01a184bc30"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a559f89cfb04b300d92fe01a184bc30">&#9670;&nbsp;</a></span>CURVE_Pybab_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pybab_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="aacc3f63e392a854d2c4e2e300146e2d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aacc3f63e392a854d2c4e2e300146e2d5">&#9670;&nbsp;</a></span>CURVE_Pybb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pybb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a52c7d8854fa476b22bcdf767227a6a7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52c7d8854fa476b22bcdf767227a6a7a">&#9670;&nbsp;</a></span>CURVE_Pybba_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pybba_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a442203cbcaff4fd9680f2b53ef478de3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a442203cbcaff4fd9680f2b53ef478de3">&#9670;&nbsp;</a></span>CURVE_Pybbb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_Pybbb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a096cae2d374f876bda8dd2ae4dc84754"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a096cae2d374f876bda8dd2ae4dc84754">&#9670;&nbsp;</a></span>CURVE_SB_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_SB_HIFIVE[2][2]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GLV decomposition </p>
</div>
</div>
<a id="aad9912664fa37db8efab7842ba9105c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad9912664fa37db8efab7842ba9105c1">&#9670;&nbsp;</a></span>CURVE_W_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_W_HIFIVE[2]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GLV decomposition </p>
</div>
</div>
<a id="ab2b27b1453706b46b5a93f19ac62761f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2b27b1453706b46b5a93f19ac62761f">&#9670;&nbsp;</a></span>CURVE_WB_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> CURVE_WB_HIFIVE[4]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GS decomposition </p>
</div>
</div>
<a id="a4e08590457946990faedde13bdeb66c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e08590457946990faedde13bdeb66c6">&#9670;&nbsp;</a></span>Fra_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> Fra_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of BN curve Frobenius Constant </p>
</div>
</div>
<a id="a0283670d2c6ff13b2855b7c692966222"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0283670d2c6ff13b2855b7c692966222">&#9670;&nbsp;</a></span>Frb_HIFIVE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__336__60_8h.html#a43cd5984d14e5bce79a1dd36a17ec7e1">BIG_336_60</a> Frb_HIFIVE</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of BN curve Frobenius Constant </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated 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>