blob: bb3a0abc19acec32619b642f7f062de0d6e897d6 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: ecp_BLS48.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>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.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.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</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_BLS48.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__BLS48_8h_source.html">fp_BLS48.h</a>&quot;</code><br />
<code>#include &quot;config_curve_BLS48.h&quot;</code><br />
</div>
<p><a href="ecp__BLS48_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__BLS48.html">ECP_BLS48</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__BLS48.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:ac637a0454bc40c7b679b81d0988bb02f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ac637a0454bc40c7b679b81d0988bb02f">ECP_BLS48_isinf</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:ac637a0454bc40c7b679b81d0988bb02f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for ECP point equal to infinity. <a href="#ac637a0454bc40c7b679b81d0988bb02f">More...</a><br /></td></tr>
<tr class="separator:ac637a0454bc40c7b679b81d0988bb02f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa818303b5c7c5c47ca3e540da00e1574"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aa818303b5c7c5c47ca3e540da00e1574">ECP_BLS48_equals</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q)</td></tr>
<tr class="memdesc:aa818303b5c7c5c47ca3e540da00e1574"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for equality of two ECPs. <a href="#aa818303b5c7c5c47ca3e540da00e1574">More...</a><br /></td></tr>
<tr class="separator:aa818303b5c7c5c47ca3e540da00e1574"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7956722970f6804a37c4e5ab168a1f82"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7956722970f6804a37c4e5ab168a1f82">ECP_BLS48_copy</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q)</td></tr>
<tr class="memdesc:a7956722970f6804a37c4e5ab168a1f82"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy ECP point to another ECP point. <a href="#a7956722970f6804a37c4e5ab168a1f82">More...</a><br /></td></tr>
<tr class="separator:a7956722970f6804a37c4e5ab168a1f82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2efb650c3655c92f7537e7b3b71d45e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aa2efb650c3655c92f7537e7b3b71d45e">ECP_BLS48_neg</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:aa2efb650c3655c92f7537e7b3b71d45e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Negation of an ECP point. <a href="#aa2efb650c3655c92f7537e7b3b71d45e">More...</a><br /></td></tr>
<tr class="separator:aa2efb650c3655c92f7537e7b3b71d45e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5177345c8139a8a0e778711c12b7b7d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a5177345c8139a8a0e778711c12b7b7d3">ECP_BLS48_inf</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:a5177345c8139a8a0e778711c12b7b7d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point-at-infinity. <a href="#a5177345c8139a8a0e778711c12b7b7d3">More...</a><br /></td></tr>
<tr class="separator:a5177345c8139a8a0e778711c12b7b7d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1aafc34efaa45dad8c803b16bedacb4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ae1aafc34efaa45dad8c803b16bedacb4">ECP_BLS48_rhs</a> (<a class="el" href="structFP__BLS48.html">FP_BLS48</a> *r, <a class="el" href="structFP__BLS48.html">FP_BLS48</a> *x)</td></tr>
<tr class="memdesc:ae1aafc34efaa45dad8c803b16bedacb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate Right Hand Side of curve equation y^2=f(x) <a href="#ae1aafc34efaa45dad8c803b16bedacb4">More...</a><br /></td></tr>
<tr class="separator:ae1aafc34efaa45dad8c803b16bedacb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49f38c11e4a4245e14b3852b5364b042"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a49f38c11e4a4245e14b3852b5364b042">ECP_BLS48_set</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> x, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> y)</td></tr>
<tr class="memdesc:a49f38c11e4a4245e14b3852b5364b042"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point(x,y) given x and y. <a href="#a49f38c11e4a4245e14b3852b5364b042">More...</a><br /></td></tr>
<tr class="separator:a49f38c11e4a4245e14b3852b5364b042"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a469c3b06ece5b88feefcc4ce7f9d9ff4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a469c3b06ece5b88feefcc4ce7f9d9ff4">ECP_BLS48_get</a> (<a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> x, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> y, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:a469c3b06ece5b88feefcc4ce7f9d9ff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extract x and y coordinates of an ECP point P. <a href="#a469c3b06ece5b88feefcc4ce7f9d9ff4">More...</a><br /></td></tr>
<tr class="separator:a469c3b06ece5b88feefcc4ce7f9d9ff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d92f863518da56d164e24e1b2aba842"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a3d92f863518da56d164e24e1b2aba842">ECP_BLS48_add</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q)</td></tr>
<tr class="memdesc:a3d92f863518da56d164e24e1b2aba842"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds ECP instance Q to ECP instance P. <a href="#a3d92f863518da56d164e24e1b2aba842">More...</a><br /></td></tr>
<tr class="separator:a3d92f863518da56d164e24e1b2aba842"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84efba6f8bdb0016afa2a8e970b5de70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a84efba6f8bdb0016afa2a8e970b5de70">ECP_BLS48_sub</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q)</td></tr>
<tr class="memdesc:a84efba6f8bdb0016afa2a8e970b5de70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtracts ECP instance Q from ECP instance P. <a href="#a84efba6f8bdb0016afa2a8e970b5de70">More...</a><br /></td></tr>
<tr class="separator:a84efba6f8bdb0016afa2a8e970b5de70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8cf966c62c795191a69610ff495b89e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aa8cf966c62c795191a69610ff495b89e">ECP_BLS48_setx</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> x, int s)</td></tr>
<tr class="memdesc:aa8cf966c62c795191a69610ff495b89e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set ECP to point(x,y) given just x and sign of y. <a href="#aa8cf966c62c795191a69610ff495b89e">More...</a><br /></td></tr>
<tr class="separator:aa8cf966c62c795191a69610ff495b89e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeec58840b9b90893154acfe0e66cdef1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aeec58840b9b90893154acfe0e66cdef1">ECP_BLS48_cfp</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q)</td></tr>
<tr class="memdesc:aeec58840b9b90893154acfe0e66cdef1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies Point by curve co-factor. <a href="#aeec58840b9b90893154acfe0e66cdef1">More...</a><br /></td></tr>
<tr class="separator:aeec58840b9b90893154acfe0e66cdef1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824b1a82216446086608fffbd5575f7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a824b1a82216446086608fffbd5575f7d">ECP_BLS48_mapit</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q, <a class="el" href="structoctet.html">octet</a> *w)</td></tr>
<tr class="memdesc:a824b1a82216446086608fffbd5575f7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps random BIG to curve point of correct order. <a href="#a824b1a82216446086608fffbd5575f7d">More...</a><br /></td></tr>
<tr class="separator:a824b1a82216446086608fffbd5575f7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cf4b7500756c0d52144824e2a42882e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a1cf4b7500756c0d52144824e2a42882e">ECP_BLS48_affine</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:a1cf4b7500756c0d52144824e2a42882e"><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="#a1cf4b7500756c0d52144824e2a42882e">More...</a><br /></td></tr>
<tr class="separator:a1cf4b7500756c0d52144824e2a42882e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abab6ec1dc09cfd2f0644a26c15a928ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#abab6ec1dc09cfd2f0644a26c15a928ae">ECP_BLS48_outputxyz</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:abab6ec1dc09cfd2f0644a26c15a928ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console, in projective coordinates. <a href="#abab6ec1dc09cfd2f0644a26c15a928ae">More...</a><br /></td></tr>
<tr class="separator:abab6ec1dc09cfd2f0644a26c15a928ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd28614d2cb541e848a0faf8f688a360"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#acd28614d2cb541e848a0faf8f688a360">ECP_BLS48_output</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:acd28614d2cb541e848a0faf8f688a360"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console, converted to affine coordinates. <a href="#acd28614d2cb541e848a0faf8f688a360">More...</a><br /></td></tr>
<tr class="separator:acd28614d2cb541e848a0faf8f688a360"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67d192773b2422d4bd7150716eb4beb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a67d192773b2422d4bd7150716eb4beb5">ECP_BLS48_rawoutput</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:a67d192773b2422d4bd7150716eb4beb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats and outputs an ECP point to the console. <a href="#a67d192773b2422d4bd7150716eb4beb5">More...</a><br /></td></tr>
<tr class="separator:a67d192773b2422d4bd7150716eb4beb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2d55dc1453925abf7a5d29fb7340219"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#af2d55dc1453925abf7a5d29fb7340219">ECP_BLS48_toOctet</a> (<a class="el" href="structoctet.html">octet</a> *S, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, bool c)</td></tr>
<tr class="memdesc:af2d55dc1453925abf7a5d29fb7340219"><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="#af2d55dc1453925abf7a5d29fb7340219">More...</a><br /></td></tr>
<tr class="separator:af2d55dc1453925abf7a5d29fb7340219"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bbef2472830feede74e4e8246bb964e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a0bbef2472830feede74e4e8246bb964e">ECP_BLS48_fromOctet</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structoctet.html">octet</a> *S)</td></tr>
<tr class="memdesc:a0bbef2472830feede74e4e8246bb964e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an ECP point from an octet string. <a href="#a0bbef2472830feede74e4e8246bb964e">More...</a><br /></td></tr>
<tr class="separator:a0bbef2472830feede74e4e8246bb964e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6ce743cb2b89b67c7244d7dbed2b38e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ab6ce743cb2b89b67c7244d7dbed2b38e">ECP_BLS48_dbl</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P)</td></tr>
<tr class="memdesc:ab6ce743cb2b89b67c7244d7dbed2b38e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Doubles an ECP instance P. <a href="#ab6ce743cb2b89b67c7244d7dbed2b38e">More...</a><br /></td></tr>
<tr class="separator:ab6ce743cb2b89b67c7244d7dbed2b38e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a216e8b9784de22193c0cbba967bff388"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a216e8b9784de22193c0cbba967bff388">ECP_BLS48_pinmul</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, int i, int b)</td></tr>
<tr class="memdesc:a216e8b9784de22193c0cbba967bff388"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies an ECP instance P by a small integer, side-channel resistant. <a href="#a216e8b9784de22193c0cbba967bff388">More...</a><br /></td></tr>
<tr class="separator:a216e8b9784de22193c0cbba967bff388"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c426b55b75e48c0f8284f6d1ed89198"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7c426b55b75e48c0f8284f6d1ed89198">ECP_BLS48_mul</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> b)</td></tr>
<tr class="memdesc:a7c426b55b75e48c0f8284f6d1ed89198"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiplies an ECP instance P by a BIG, side-channel resistant. <a href="#a7c426b55b75e48c0f8284f6d1ed89198">More...</a><br /></td></tr>
<tr class="separator:a7c426b55b75e48c0f8284f6d1ed89198"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac2721d5bef4f8184248b5b52ee95da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aac2721d5bef4f8184248b5b52ee95da0">ECP_BLS48_mul2</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *P, <a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *Q, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> e, <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> f)</td></tr>
<tr class="memdesc:aac2721d5bef4f8184248b5b52ee95da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates double multiplication P=e*P+f*Q, side-channel resistant. <a href="#aac2721d5bef4f8184248b5b52ee95da0">More...</a><br /></td></tr>
<tr class="separator:aac2721d5bef4f8184248b5b52ee95da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a264c236b1966a3d5dc727abbd907502a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a264c236b1966a3d5dc727abbd907502a">ECP_BLS48_generator</a> (<a class="el" href="structECP__BLS48.html">ECP_BLS48</a> *G)</td></tr>
<tr class="memdesc:a264c236b1966a3d5dc727abbd907502a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Group Generator from ROM. <a href="#a264c236b1966a3d5dc727abbd907502a">More...</a><br /></td></tr>
<tr class="separator:a264c236b1966a3d5dc727abbd907502a"><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:a3917e09a55585c3e0dc3317be205eeab"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a3917e09a55585c3e0dc3317be205eeab">CURVE_A_BLS48</a></td></tr>
<tr class="separator:a3917e09a55585c3e0dc3317be205eeab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bb49a68ef04098b064b997cf1e031ef"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a4bb49a68ef04098b064b997cf1e031ef">CURVE_Cof_I_BLS48</a></td></tr>
<tr class="separator:a4bb49a68ef04098b064b997cf1e031ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b746fcf1d5a148b2570eb85f950bcd8"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a3b746fcf1d5a148b2570eb85f950bcd8">CURVE_B_I_BLS48</a></td></tr>
<tr class="separator:a3b746fcf1d5a148b2570eb85f950bcd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5048f309ad7888cca5cf18aa44d25af5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a5048f309ad7888cca5cf18aa44d25af5">CURVE_B_BLS48</a></td></tr>
<tr class="separator:a5048f309ad7888cca5cf18aa44d25af5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a650d4e749a405f948be20b14a7c055f8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a650d4e749a405f948be20b14a7c055f8">CURVE_Order_BLS48</a></td></tr>
<tr class="separator:a650d4e749a405f948be20b14a7c055f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f3cd43c6bf74c06d854f7342838b961"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7f3cd43c6bf74c06d854f7342838b961">CURVE_Cof_BLS48</a></td></tr>
<tr class="separator:a7f3cd43c6bf74c06d854f7342838b961"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cdc82d71bc028c0a162ea818fa3b46d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a1cdc82d71bc028c0a162ea818fa3b46d">CURVE_Gx_BLS48</a></td></tr>
<tr class="separator:a1cdc82d71bc028c0a162ea818fa3b46d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae940a6674bc7563fe9b59c2b33954dde"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ae940a6674bc7563fe9b59c2b33954dde">CURVE_Gy_BLS48</a></td></tr>
<tr class="separator:ae940a6674bc7563fe9b59c2b33954dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1378a0ede545fae3d5d5cb28d82d8ef7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a1378a0ede545fae3d5d5cb28d82d8ef7">CURVE_Pxa_BLS48</a></td></tr>
<tr class="separator:a1378a0ede545fae3d5d5cb28d82d8ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad64a3a6b035f4917a2cfeb919ee5c7bf"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ad64a3a6b035f4917a2cfeb919ee5c7bf">CURVE_Pxb_BLS48</a></td></tr>
<tr class="separator:ad64a3a6b035f4917a2cfeb919ee5c7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4d0dd755c44853505c98c17c6ef641"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7d4d0dd755c44853505c98c17c6ef641">CURVE_Pya_BLS48</a></td></tr>
<tr class="separator:a7d4d0dd755c44853505c98c17c6ef641"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29db2e1c2448ee4f48b42fcbd9ddcbf9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a29db2e1c2448ee4f48b42fcbd9ddcbf9">CURVE_Pyb_BLS48</a></td></tr>
<tr class="separator:a29db2e1c2448ee4f48b42fcbd9ddcbf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5faed0bc309b7c555a71cfece7e5788"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ac5faed0bc309b7c555a71cfece7e5788">CURVE_Pxaa_BLS48</a></td></tr>
<tr class="separator:ac5faed0bc309b7c555a71cfece7e5788"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c1dafa9bbd72af5e1cf661d58252902"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7c1dafa9bbd72af5e1cf661d58252902">CURVE_Pxab_BLS48</a></td></tr>
<tr class="separator:a7c1dafa9bbd72af5e1cf661d58252902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b752a48ceca2115935fc5360aea17fc"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a7b752a48ceca2115935fc5360aea17fc">CURVE_Pxba_BLS48</a></td></tr>
<tr class="separator:a7b752a48ceca2115935fc5360aea17fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa8a4b210032f6e4ca34d6bc89f8bf04"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#afa8a4b210032f6e4ca34d6bc89f8bf04">CURVE_Pxbb_BLS48</a></td></tr>
<tr class="separator:afa8a4b210032f6e4ca34d6bc89f8bf04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12ca95da31f59d07eb39e3f5076a3f95"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a12ca95da31f59d07eb39e3f5076a3f95">CURVE_Pyaa_BLS48</a></td></tr>
<tr class="separator:a12ca95da31f59d07eb39e3f5076a3f95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0e1a516ac9da1c2f4c0cc0747a8f7a9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ac0e1a516ac9da1c2f4c0cc0747a8f7a9">CURVE_Pyab_BLS48</a></td></tr>
<tr class="separator:ac0e1a516ac9da1c2f4c0cc0747a8f7a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7eb1263360b9edaa1e3ab05559c4abb"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ad7eb1263360b9edaa1e3ab05559c4abb">CURVE_Pyba_BLS48</a></td></tr>
<tr class="separator:ad7eb1263360b9edaa1e3ab05559c4abb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34e58591de7be861b90110a65a1e619c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a34e58591de7be861b90110a65a1e619c">CURVE_Pybb_BLS48</a></td></tr>
<tr class="separator:a34e58591de7be861b90110a65a1e619c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99040006d680b4052da88d4ae233aef6"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a99040006d680b4052da88d4ae233aef6">CURVE_Pxaaa_BLS48</a></td></tr>
<tr class="separator:a99040006d680b4052da88d4ae233aef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af58e7ac25c14ec7b6f7b46c4a2034a2b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#af58e7ac25c14ec7b6f7b46c4a2034a2b">CURVE_Pxaab_BLS48</a></td></tr>
<tr class="separator:af58e7ac25c14ec7b6f7b46c4a2034a2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace880a2d3a39350cf0c3dc54a4fbb4f9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ace880a2d3a39350cf0c3dc54a4fbb4f9">CURVE_Pxaba_BLS48</a></td></tr>
<tr class="separator:ace880a2d3a39350cf0c3dc54a4fbb4f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dd5c0f4dbe4a88c9eb60d7a79a3bef0"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a3dd5c0f4dbe4a88c9eb60d7a79a3bef0">CURVE_Pxabb_BLS48</a></td></tr>
<tr class="separator:a3dd5c0f4dbe4a88c9eb60d7a79a3bef0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fbf5fc9c00722793a98eeefb12b345a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a3fbf5fc9c00722793a98eeefb12b345a">CURVE_Pxbaa_BLS48</a></td></tr>
<tr class="separator:a3fbf5fc9c00722793a98eeefb12b345a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ef348b577814b70c6d28ab20be0f3f1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a1ef348b577814b70c6d28ab20be0f3f1">CURVE_Pxbab_BLS48</a></td></tr>
<tr class="separator:a1ef348b577814b70c6d28ab20be0f3f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af032815e4b100f1f5504d88c8512d607"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#af032815e4b100f1f5504d88c8512d607">CURVE_Pxbba_BLS48</a></td></tr>
<tr class="separator:af032815e4b100f1f5504d88c8512d607"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a416e27b4a1c553eb9f43f14de2b29e69"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a416e27b4a1c553eb9f43f14de2b29e69">CURVE_Pxbbb_BLS48</a></td></tr>
<tr class="separator:a416e27b4a1c553eb9f43f14de2b29e69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e07d91c9849aa0faa8d406edc201fc3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a6e07d91c9849aa0faa8d406edc201fc3">CURVE_Pyaaa_BLS48</a></td></tr>
<tr class="separator:a6e07d91c9849aa0faa8d406edc201fc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ff8df2608f406dbb0f7b493c82c0b34"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a4ff8df2608f406dbb0f7b493c82c0b34">CURVE_Pyaab_BLS48</a></td></tr>
<tr class="separator:a4ff8df2608f406dbb0f7b493c82c0b34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabda97b93f0e7b24e5686de2abac4f19"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aabda97b93f0e7b24e5686de2abac4f19">CURVE_Pyaba_BLS48</a></td></tr>
<tr class="separator:aabda97b93f0e7b24e5686de2abac4f19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade0ccccb67ffdd9a91c275b68adc7eef"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ade0ccccb67ffdd9a91c275b68adc7eef">CURVE_Pyabb_BLS48</a></td></tr>
<tr class="separator:ade0ccccb67ffdd9a91c275b68adc7eef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee83aec0bc1e27f01d5ef97ed623447f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aee83aec0bc1e27f01d5ef97ed623447f">CURVE_Pybaa_BLS48</a></td></tr>
<tr class="separator:aee83aec0bc1e27f01d5ef97ed623447f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6618fe8236c13970f32fdd8d32fe22d4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a6618fe8236c13970f32fdd8d32fe22d4">CURVE_Pybab_BLS48</a></td></tr>
<tr class="separator:a6618fe8236c13970f32fdd8d32fe22d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0bd83cc19752cd941d6bb6df821b6a1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aa0bd83cc19752cd941d6bb6df821b6a1">CURVE_Pybba_BLS48</a></td></tr>
<tr class="separator:aa0bd83cc19752cd941d6bb6df821b6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19928ac15635fbc87ecbcafc6da79c4f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a19928ac15635fbc87ecbcafc6da79c4f">CURVE_Pybbb_BLS48</a></td></tr>
<tr class="separator:a19928ac15635fbc87ecbcafc6da79c4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a09fcdee43807fb24f1265b5fffd56b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a1a09fcdee43807fb24f1265b5fffd56b">CURVE_Bnx_BLS48</a></td></tr>
<tr class="separator:a1a09fcdee43807fb24f1265b5fffd56b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0d02388d5a9ae47636cae925af9e9c4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#ac0d02388d5a9ae47636cae925af9e9c4">CURVE_Cru_BLS48</a></td></tr>
<tr class="separator:ac0d02388d5a9ae47636cae925af9e9c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2f84b8ba9625ad4617db4dfb8c84194"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#aa2f84b8ba9625ad4617db4dfb8c84194">Fra_BLS48</a></td></tr>
<tr class="separator:aa2f84b8ba9625ad4617db4dfb8c84194"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93bf4c71a6093999ba8e5a84de936a5d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a93bf4c71a6093999ba8e5a84de936a5d">Frb_BLS48</a></td></tr>
<tr class="separator:a93bf4c71a6093999ba8e5a84de936a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5706495c30b1e31626ac53bf46bb7f01"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a5706495c30b1e31626ac53bf46bb7f01">CURVE_W_BLS48</a> [2]</td></tr>
<tr class="separator:a5706495c30b1e31626ac53bf46bb7f01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a764bb08e4d5be373c2e250d5480805be"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a764bb08e4d5be373c2e250d5480805be">CURVE_SB_BLS48</a> [2][2]</td></tr>
<tr class="separator:a764bb08e4d5be373c2e250d5480805be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40668810415ea1a1385010871050dc2f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a40668810415ea1a1385010871050dc2f">CURVE_WB_BLS48</a> [4]</td></tr>
<tr class="separator:a40668810415ea1a1385010871050dc2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ce6af013412b72e4ca615905c2b447f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ecp__BLS48_8h.html#a6ce6af013412b72e4ca615905c2b447f">CURVE_BB_BLS48</a> [4][4]</td></tr>
<tr class="separator:a6ce6af013412b72e4ca615905c2b447f"><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="a3d92f863518da56d164e24e1b2aba842"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d92f863518da56d164e24e1b2aba842">&#9670;&nbsp;</a></span>ECP_BLS48_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__BLS48.html">ECP_BLS48</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="a1cf4b7500756c0d52144824e2a42882e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cf4b7500756c0d52144824e2a42882e">&#9670;&nbsp;</a></span>ECP_BLS48_affine()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_affine </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="aeec58840b9b90893154acfe0e66cdef1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeec58840b9b90893154acfe0e66cdef1">&#9670;&nbsp;</a></span>ECP_BLS48_cfp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_cfp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a7956722970f6804a37c4e5ab168a1f82"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7956722970f6804a37c4e5ab168a1f82">&#9670;&nbsp;</a></span>ECP_BLS48_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__BLS48.html">ECP_BLS48</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="ab6ce743cb2b89b67c7244d7dbed2b38e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab6ce743cb2b89b67c7244d7dbed2b38e">&#9670;&nbsp;</a></span>ECP_BLS48_dbl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_dbl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="aa818303b5c7c5c47ca3e540da00e1574"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa818303b5c7c5c47ca3e540da00e1574">&#9670;&nbsp;</a></span>ECP_BLS48_equals()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_equals </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__BLS48.html">ECP_BLS48</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="a0bbef2472830feede74e4e8246bb964e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bbef2472830feede74e4e8246bb964e">&#9670;&nbsp;</a></span>ECP_BLS48_fromOctet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_fromOctet </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a264c236b1966a3d5dc727abbd907502a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a264c236b1966a3d5dc727abbd907502a">&#9670;&nbsp;</a></span>ECP_BLS48_generator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_generator </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a469c3b06ece5b88feefcc4ce7f9d9ff4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a469c3b06ece5b88feefcc4ce7f9d9ff4">&#9670;&nbsp;</a></span>ECP_BLS48_get()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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__BLS48.html">ECP_BLS48</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="a5177345c8139a8a0e778711c12b7b7d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5177345c8139a8a0e778711c12b7b7d3">&#9670;&nbsp;</a></span>ECP_BLS48_inf()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_inf </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="ac637a0454bc40c7b679b81d0988bb02f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac637a0454bc40c7b679b81d0988bb02f">&#9670;&nbsp;</a></span>ECP_BLS48_isinf()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_isinf </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a824b1a82216446086608fffbd5575f7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a824b1a82216446086608fffbd5575f7d">&#9670;&nbsp;</a></span>ECP_BLS48_mapit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_mapit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a7c426b55b75e48c0f8284f6d1ed89198"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c426b55b75e48c0f8284f6d1ed89198">&#9670;&nbsp;</a></span>ECP_BLS48_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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="aac2721d5bef4f8184248b5b52ee95da0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac2721d5bef4f8184248b5b52ee95da0">&#9670;&nbsp;</a></span>ECP_BLS48_mul2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_mul2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__BLS48.html">ECP_BLS48</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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="aa2efb650c3655c92f7537e7b3b71d45e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2efb650c3655c92f7537e7b3b71d45e">&#9670;&nbsp;</a></span>ECP_BLS48_neg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_neg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="acd28614d2cb541e848a0faf8f688a360"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd28614d2cb541e848a0faf8f688a360">&#9670;&nbsp;</a></span>ECP_BLS48_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="abab6ec1dc09cfd2f0644a26c15a928ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abab6ec1dc09cfd2f0644a26c15a928ae">&#9670;&nbsp;</a></span>ECP_BLS48_outputxyz()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_outputxyz </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a216e8b9784de22193c0cbba967bff388"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a216e8b9784de22193c0cbba967bff388">&#9670;&nbsp;</a></span>ECP_BLS48_pinmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_pinmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="a67d192773b2422d4bd7150716eb4beb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67d192773b2422d4bd7150716eb4beb5">&#9670;&nbsp;</a></span>ECP_BLS48_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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="ae1aafc34efaa45dad8c803b16bedacb4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1aafc34efaa45dad8c803b16bedacb4">&#9670;&nbsp;</a></span>ECP_BLS48_rhs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_rhs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structFP__BLS48.html">FP_BLS48</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__BLS48.html">FP_BLS48</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="a49f38c11e4a4245e14b3852b5364b042"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49f38c11e4a4245e14b3852b5364b042">&#9670;&nbsp;</a></span>ECP_BLS48_set()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_set </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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="aa8cf966c62c795191a69610ff495b89e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8cf966c62c795191a69610ff495b89e">&#9670;&nbsp;</a></span>ECP_BLS48_setx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ECP_BLS48_setx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</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="a84efba6f8bdb0016afa2a8e970b5de70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84efba6f8bdb0016afa2a8e970b5de70">&#9670;&nbsp;</a></span>ECP_BLS48_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structECP__BLS48.html">ECP_BLS48</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__BLS48.html">ECP_BLS48</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="af2d55dc1453925abf7a5d29fb7340219"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2d55dc1453925abf7a5d29fb7340219">&#9670;&nbsp;</a></span>ECP_BLS48_toOctet()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ECP_BLS48_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__BLS48.html">ECP_BLS48</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="a3917e09a55585c3e0dc3317be205eeab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3917e09a55585c3e0dc3317be205eeab">&#9670;&nbsp;</a></span>CURVE_A_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_A_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve A parameter </p>
</div>
</div>
<a id="a5048f309ad7888cca5cf18aa44d25af5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5048f309ad7888cca5cf18aa44d25af5">&#9670;&nbsp;</a></span>CURVE_B_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_B_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve B parameter </p>
</div>
</div>
<a id="a3b746fcf1d5a148b2570eb85f950bcd8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b746fcf1d5a148b2570eb85f950bcd8">&#9670;&nbsp;</a></span>CURVE_B_I_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_B_I_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve B_i parameter </p>
</div>
</div>
<a id="a6ce6af013412b72e4ca615905c2b447f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ce6af013412b72e4ca615905c2b447f">&#9670;&nbsp;</a></span>CURVE_BB_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_BB_BLS48[4][4]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GS decomposition </p>
</div>
</div>
<a id="a1a09fcdee43807fb24f1265b5fffd56b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a09fcdee43807fb24f1265b5fffd56b">&#9670;&nbsp;</a></span>CURVE_Bnx_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Bnx_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve x parameter </p>
</div>
</div>
<a id="a7f3cd43c6bf74c06d854f7342838b961"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f3cd43c6bf74c06d854f7342838b961">&#9670;&nbsp;</a></span>CURVE_Cof_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Cof_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve cofactor </p>
</div>
</div>
<a id="a4bb49a68ef04098b064b997cf1e031ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bb49a68ef04098b064b997cf1e031ef">&#9670;&nbsp;</a></span>CURVE_Cof_I_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int CURVE_Cof_I_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve cofactor </p>
</div>
</div>
<a id="ac0d02388d5a9ae47636cae925af9e9c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0d02388d5a9ae47636cae925af9e9c4">&#9670;&nbsp;</a></span>CURVE_Cru_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Cru_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve Cube Root of Unity </p>
</div>
</div>
<a id="a1cdc82d71bc028c0a162ea818fa3b46d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cdc82d71bc028c0a162ea818fa3b46d">&#9670;&nbsp;</a></span>CURVE_Gx_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Gx_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>x-coordinate of generator point in group G1 </p>
</div>
</div>
<a id="ae940a6674bc7563fe9b59c2b33954dde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae940a6674bc7563fe9b59c2b33954dde">&#9670;&nbsp;</a></span>CURVE_Gy_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Gy_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>y-coordinate of generator point in group G1 </p>
</div>
</div>
<a id="a650d4e749a405f948be20b14a7c055f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a650d4e749a405f948be20b14a7c055f8">&#9670;&nbsp;</a></span>CURVE_Order_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Order_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>Elliptic curve group order </p>
</div>
</div>
<a id="a1378a0ede545fae3d5d5cb28d82d8ef7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1378a0ede545fae3d5d5cb28d82d8ef7">&#9670;&nbsp;</a></span>CURVE_Pxa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ac5faed0bc309b7c555a71cfece7e5788"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5faed0bc309b7c555a71cfece7e5788">&#9670;&nbsp;</a></span>CURVE_Pxaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a99040006d680b4052da88d4ae233aef6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99040006d680b4052da88d4ae233aef6">&#9670;&nbsp;</a></span>CURVE_Pxaaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxaaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="af58e7ac25c14ec7b6f7b46c4a2034a2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af58e7ac25c14ec7b6f7b46c4a2034a2b">&#9670;&nbsp;</a></span>CURVE_Pxaab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxaab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7c1dafa9bbd72af5e1cf661d58252902"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c1dafa9bbd72af5e1cf661d58252902">&#9670;&nbsp;</a></span>CURVE_Pxab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ace880a2d3a39350cf0c3dc54a4fbb4f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace880a2d3a39350cf0c3dc54a4fbb4f9">&#9670;&nbsp;</a></span>CURVE_Pxaba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxaba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a3dd5c0f4dbe4a88c9eb60d7a79a3bef0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3dd5c0f4dbe4a88c9eb60d7a79a3bef0">&#9670;&nbsp;</a></span>CURVE_Pxabb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxabb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ad64a3a6b035f4917a2cfeb919ee5c7bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad64a3a6b035f4917a2cfeb919ee5c7bf">&#9670;&nbsp;</a></span>CURVE_Pxb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7b752a48ceca2115935fc5360aea17fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b752a48ceca2115935fc5360aea17fc">&#9670;&nbsp;</a></span>CURVE_Pxba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a3fbf5fc9c00722793a98eeefb12b345a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3fbf5fc9c00722793a98eeefb12b345a">&#9670;&nbsp;</a></span>CURVE_Pxbaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxbaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a1ef348b577814b70c6d28ab20be0f3f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ef348b577814b70c6d28ab20be0f3f1">&#9670;&nbsp;</a></span>CURVE_Pxbab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxbab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="afa8a4b210032f6e4ca34d6bc89f8bf04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa8a4b210032f6e4ca34d6bc89f8bf04">&#9670;&nbsp;</a></span>CURVE_Pxbb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxbb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="af032815e4b100f1f5504d88c8512d607"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af032815e4b100f1f5504d88c8512d607">&#9670;&nbsp;</a></span>CURVE_Pxbba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxbba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a416e27b4a1c553eb9f43f14de2b29e69"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a416e27b4a1c553eb9f43f14de2b29e69">&#9670;&nbsp;</a></span>CURVE_Pxbbb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pxbbb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of x-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a7d4d0dd755c44853505c98c17c6ef641"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d4d0dd755c44853505c98c17c6ef641">&#9670;&nbsp;</a></span>CURVE_Pya_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pya_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a12ca95da31f59d07eb39e3f5076a3f95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a12ca95da31f59d07eb39e3f5076a3f95">&#9670;&nbsp;</a></span>CURVE_Pyaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a6e07d91c9849aa0faa8d406edc201fc3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e07d91c9849aa0faa8d406edc201fc3">&#9670;&nbsp;</a></span>CURVE_Pyaaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyaaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a4ff8df2608f406dbb0f7b493c82c0b34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ff8df2608f406dbb0f7b493c82c0b34">&#9670;&nbsp;</a></span>CURVE_Pyaab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyaab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ac0e1a516ac9da1c2f4c0cc0747a8f7a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0e1a516ac9da1c2f4c0cc0747a8f7a9">&#9670;&nbsp;</a></span>CURVE_Pyab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="aabda97b93f0e7b24e5686de2abac4f19"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aabda97b93f0e7b24e5686de2abac4f19">&#9670;&nbsp;</a></span>CURVE_Pyaba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyaba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ade0ccccb67ffdd9a91c275b68adc7eef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade0ccccb67ffdd9a91c275b68adc7eef">&#9670;&nbsp;</a></span>CURVE_Pyabb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyabb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a29db2e1c2448ee4f48b42fcbd9ddcbf9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29db2e1c2448ee4f48b42fcbd9ddcbf9">&#9670;&nbsp;</a></span>CURVE_Pyb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="ad7eb1263360b9edaa1e3ab05559c4abb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7eb1263360b9edaa1e3ab05559c4abb">&#9670;&nbsp;</a></span>CURVE_Pyba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pyba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="aee83aec0bc1e27f01d5ef97ed623447f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee83aec0bc1e27f01d5ef97ed623447f">&#9670;&nbsp;</a></span>CURVE_Pybaa_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pybaa_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a6618fe8236c13970f32fdd8d32fe22d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6618fe8236c13970f32fdd8d32fe22d4">&#9670;&nbsp;</a></span>CURVE_Pybab_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pybab_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a34e58591de7be861b90110a65a1e619c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34e58591de7be861b90110a65a1e619c">&#9670;&nbsp;</a></span>CURVE_Pybb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pybb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="aa0bd83cc19752cd941d6bb6df821b6a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0bd83cc19752cd941d6bb6df821b6a1">&#9670;&nbsp;</a></span>CURVE_Pybba_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pybba_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a19928ac15635fbc87ecbcafc6da79c4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19928ac15635fbc87ecbcafc6da79c4f">&#9670;&nbsp;</a></span>CURVE_Pybbb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_Pybbb_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>imaginary part of y-coordinate of generator point in group G2 </p>
</div>
</div>
<a id="a764bb08e4d5be373c2e250d5480805be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a764bb08e4d5be373c2e250d5480805be">&#9670;&nbsp;</a></span>CURVE_SB_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_SB_BLS48[2][2]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GLV decomposition </p>
</div>
</div>
<a id="a5706495c30b1e31626ac53bf46bb7f01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5706495c30b1e31626ac53bf46bb7f01">&#9670;&nbsp;</a></span>CURVE_W_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_W_BLS48[2]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GLV decomposition </p>
</div>
</div>
<a id="a40668810415ea1a1385010871050dc2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40668810415ea1a1385010871050dc2f">&#9670;&nbsp;</a></span>CURVE_WB_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> CURVE_WB_BLS48[4]</td>
</tr>
</table>
</div><div class="memdoc">
<p>BN curve constant for GS decomposition </p>
</div>
</div>
<a id="aa2f84b8ba9625ad4617db4dfb8c84194"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2f84b8ba9625ad4617db4dfb8c84194">&#9670;&nbsp;</a></span>Fra_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> Fra_BLS48</td>
</tr>
</table>
</div><div class="memdoc">
<p>real part of BN curve Frobenius Constant </p>
</div>
</div>
<a id="a93bf4c71a6093999ba8e5a84de936a5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93bf4c71a6093999ba8e5a84de936a5d">&#9670;&nbsp;</a></span>Frb_BLS48</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="big__560__58_8h.html#a6149450df1017dc5c4ef9e54fad78b30">BIG_560_58</a> Frb_BLS48</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.13
</small></address>
</body>
</html>