blob: b297d142d6d65eef7337465ce4620d0feac70877 [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: big_384_58.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="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">big_384_58.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>BIG Header File.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;inttypes.h&gt;</code><br />
<code>#include &quot;<a class="el" href="arch_8h_source.html">arch.h</a>&quot;</code><br />
<code>#include &quot;amcl.h&quot;</code><br />
<code>#include &quot;<a class="el" href="config__big__384__58_8h_source.html">config_big_384_58.h</a>&quot;</code><br />
</div>
<p><a href="big__384__58_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="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:af101e9b3ede482bfe16e1ddab5bf39bb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#af101e9b3ede482bfe16e1ddab5bf39bb">BIGBITS_384_58</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__384__58_8h.html#a231158cd33825cff286c2406336e0224">MODBYTES_384_58</a>)</td></tr>
<tr class="separator:af101e9b3ede482bfe16e1ddab5bf39bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82c59c9baadb3c5d881618296c935630"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a82c59c9baadb3c5d881618296c935630">NLEN_384_58</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__58_8h.html#a231158cd33825cff286c2406336e0224">MODBYTES_384_58</a>-1)/<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>))</td></tr>
<tr class="separator:a82c59c9baadb3c5d881618296c935630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bbc1e57f9520e560c34d1108871c3c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a7bbc1e57f9520e560c34d1108871c3c8">DNLEN_384_58</a>&#160;&#160;&#160;2*<a class="el" href="big__384__58_8h.html#a82c59c9baadb3c5d881618296c935630">NLEN_384_58</a></td></tr>
<tr class="separator:a7bbc1e57f9520e560c34d1108871c3c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a96d1a995cdf624142dbc7661dc61c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a8a96d1a995cdf624142dbc7661dc61c8">BMASK_384_58</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>)-1)</td></tr>
<tr class="separator:a8a96d1a995cdf624142dbc7661dc61c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4327ee14410cfee8eb9f247e40cd284"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#af4327ee14410cfee8eb9f247e40cd284">NEXCESS_384_58</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>-1))</td></tr>
<tr class="separator:af4327ee14410cfee8eb9f247e40cd284"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8efaee7fe7da09d317cedb6ef0f2cc4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ac8efaee7fe7da09d317cedb6ef0f2cc4">HBITS_384_58</a>&#160;&#160;&#160;(<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>/2)</td></tr>
<tr class="separator:ac8efaee7fe7da09d317cedb6ef0f2cc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a442aeb9af2b58dcd6894cb61a3a9bd51"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a442aeb9af2b58dcd6894cb61a3a9bd51">HMASK_384_58</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__58_8h.html#ac8efaee7fe7da09d317cedb6ef0f2cc4">HBITS_384_58</a>)-1)</td></tr>
<tr class="separator:a442aeb9af2b58dcd6894cb61a3a9bd51"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ab8c68dbf8612f8f005c402a289c5da31"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>[<a class="el" href="big__384__58_8h.html#a82c59c9baadb3c5d881618296c935630">NLEN_384_58</a>]</td></tr>
<tr class="separator:ab8c68dbf8612f8f005c402a289c5da31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab914db55caa046b50795e836a4a052ea"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>[<a class="el" href="big__384__58_8h.html#a7bbc1e57f9520e560c34d1108871c3c8">DNLEN_384_58</a>]</td></tr>
<tr class="separator:ab914db55caa046b50795e836a4a052ea"><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:a085ab7b1ab27484e4a7c7140feb60187"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a085ab7b1ab27484e4a7c7140feb60187">BIG_384_58_iszilch</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a085ab7b1ab27484e4a7c7140feb60187"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a085ab7b1ab27484e4a7c7140feb60187">More...</a><br /></td></tr>
<tr class="separator:a085ab7b1ab27484e4a7c7140feb60187"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95b36449d7c9b454aa7078ee3d315440"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a95b36449d7c9b454aa7078ee3d315440">BIG_384_58_isunity</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a95b36449d7c9b454aa7078ee3d315440"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#a95b36449d7c9b454aa7078ee3d315440">More...</a><br /></td></tr>
<tr class="separator:a95b36449d7c9b454aa7078ee3d315440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd9a14edae6ce1432782af539d42c1e9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#acd9a14edae6ce1432782af539d42c1e9">BIG_384_58_diszilch</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:acd9a14edae6ce1432782af539d42c1e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#acd9a14edae6ce1432782af539d42c1e9">More...</a><br /></td></tr>
<tr class="separator:acd9a14edae6ce1432782af539d42c1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6af5e5780b8fdd16090f1c39ef59d472"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a6af5e5780b8fdd16090f1c39ef59d472">BIG_384_58_output</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a6af5e5780b8fdd16090f1c39ef59d472"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#a6af5e5780b8fdd16090f1c39ef59d472">More...</a><br /></td></tr>
<tr class="separator:a6af5e5780b8fdd16090f1c39ef59d472"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c17d65c22198c489aa0ba8f2a0b9e5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a4c17d65c22198c489aa0ba8f2a0b9e5d">BIG_384_58_rawoutput</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a4c17d65c22198c489aa0ba8f2a0b9e5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#a4c17d65c22198c489aa0ba8f2a0b9e5d">More...</a><br /></td></tr>
<tr class="separator:a4c17d65c22198c489aa0ba8f2a0b9e5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47173fb66dd59791d52de7ce3e028489"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a47173fb66dd59791d52de7ce3e028489">BIG_384_58_cswap</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int s)</td></tr>
<tr class="memdesc:a47173fb66dd59791d52de7ce3e028489"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a47173fb66dd59791d52de7ce3e028489">More...</a><br /></td></tr>
<tr class="separator:a47173fb66dd59791d52de7ce3e028489"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44f7d12534086593a5cd3a3cd4a658c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a44f7d12534086593a5cd3a3cd4a658c4">BIG_384_58_cmove</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int s)</td></tr>
<tr class="memdesc:a44f7d12534086593a5cd3a3cd4a658c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#a44f7d12534086593a5cd3a3cd4a658c4">More...</a><br /></td></tr>
<tr class="separator:a44f7d12534086593a5cd3a3cd4a658c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24095a62da55894721f08bb532f345e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a24095a62da55894721f08bb532f345e0">BIG_384_58_dcmove</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int s)</td></tr>
<tr class="memdesc:a24095a62da55894721f08bb532f345e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#a24095a62da55894721f08bb532f345e0">More...</a><br /></td></tr>
<tr class="separator:a24095a62da55894721f08bb532f345e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fed12fb7988a0dd95e7fc46ceda3fb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a6fed12fb7988a0dd95e7fc46ceda3fb1">BIG_384_58_toBytes</a> (char *a, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a6fed12fb7988a0dd95e7fc46ceda3fb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#a6fed12fb7988a0dd95e7fc46ceda3fb1">More...</a><br /></td></tr>
<tr class="separator:a6fed12fb7988a0dd95e7fc46ceda3fb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2d2989242c0d216a88b51967897e050"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#af2d2989242c0d216a88b51967897e050">BIG_384_58_fromBytes</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, char *a)</td></tr>
<tr class="memdesc:af2d2989242c0d216a88b51967897e050"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#af2d2989242c0d216a88b51967897e050">More...</a><br /></td></tr>
<tr class="separator:af2d2989242c0d216a88b51967897e050"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43a58dff669431b77cb732a7264f3e73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a43a58dff669431b77cb732a7264f3e73">BIG_384_58_fromBytesLen</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, char *a, int s)</td></tr>
<tr class="memdesc:a43a58dff669431b77cb732a7264f3e73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#a43a58dff669431b77cb732a7264f3e73">More...</a><br /></td></tr>
<tr class="separator:a43a58dff669431b77cb732a7264f3e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae47259dfc64c5e59f9343101dd7fe1c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ae47259dfc64c5e59f9343101dd7fe1c7">BIG_384_58_dfromBytesLen</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, char *a, int s)</td></tr>
<tr class="memdesc:ae47259dfc64c5e59f9343101dd7fe1c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#ae47259dfc64c5e59f9343101dd7fe1c7">More...</a><br /></td></tr>
<tr class="separator:ae47259dfc64c5e59f9343101dd7fe1c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a630f7cf05c1bd2fa4885e1751502177a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a630f7cf05c1bd2fa4885e1751502177a">BIG_384_58_doutput</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:a630f7cf05c1bd2fa4885e1751502177a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a630f7cf05c1bd2fa4885e1751502177a">More...</a><br /></td></tr>
<tr class="separator:a630f7cf05c1bd2fa4885e1751502177a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2926a6467657bf033322f2362d2fb12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ad2926a6467657bf033322f2362d2fb12">BIG_384_58_drawoutput</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:ad2926a6467657bf033322f2362d2fb12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#ad2926a6467657bf033322f2362d2fb12">More...</a><br /></td></tr>
<tr class="separator:ad2926a6467657bf033322f2362d2fb12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9452ad916f4080a86bb036147be2a0cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a9452ad916f4080a86bb036147be2a0cd">BIG_384_58_rcopy</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, const <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:a9452ad916f4080a86bb036147be2a0cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#a9452ad916f4080a86bb036147be2a0cd">More...</a><br /></td></tr>
<tr class="separator:a9452ad916f4080a86bb036147be2a0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f6f4393c14a8a46adafe62e7ccb8b69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a3f6f4393c14a8a46adafe62e7ccb8b69">BIG_384_58_copy</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:a3f6f4393c14a8a46adafe62e7ccb8b69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#a3f6f4393c14a8a46adafe62e7ccb8b69">More...</a><br /></td></tr>
<tr class="separator:a3f6f4393c14a8a46adafe62e7ccb8b69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a292844e136042a363d11b252a0975f62"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a292844e136042a363d11b252a0975f62">BIG_384_58_dcopy</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y)</td></tr>
<tr class="memdesc:a292844e136042a363d11b252a0975f62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a292844e136042a363d11b252a0975f62">More...</a><br /></td></tr>
<tr class="separator:a292844e136042a363d11b252a0975f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa71228c81fe53b25def57a78bfb86e80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aa71228c81fe53b25def57a78bfb86e80">BIG_384_58_dsucopy</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:aa71228c81fe53b25def57a78bfb86e80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#aa71228c81fe53b25def57a78bfb86e80">More...</a><br /></td></tr>
<tr class="separator:aa71228c81fe53b25def57a78bfb86e80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab4faaab0b749ceca584142f2b737504"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aab4faaab0b749ceca584142f2b737504">BIG_384_58_dscopy</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:aab4faaab0b749ceca584142f2b737504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#aab4faaab0b749ceca584142f2b737504">More...</a><br /></td></tr>
<tr class="separator:aab4faaab0b749ceca584142f2b737504"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b3b94899d48922a8972a9c8e1031c2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a4b3b94899d48922a8972a9c8e1031c2e">BIG_384_58_sdcopy</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y)</td></tr>
<tr class="memdesc:a4b3b94899d48922a8972a9c8e1031c2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#a4b3b94899d48922a8972a9c8e1031c2e">More...</a><br /></td></tr>
<tr class="separator:a4b3b94899d48922a8972a9c8e1031c2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2abdf434dac4cfef0e3bc0e4e287a518"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a2abdf434dac4cfef0e3bc0e4e287a518">BIG_384_58_sducopy</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y)</td></tr>
<tr class="memdesc:a2abdf434dac4cfef0e3bc0e4e287a518"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#a2abdf434dac4cfef0e3bc0e4e287a518">More...</a><br /></td></tr>
<tr class="separator:a2abdf434dac4cfef0e3bc0e4e287a518"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13f04d7bc085d6284718d88142e68452"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a13f04d7bc085d6284718d88142e68452">BIG_384_58_zero</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a13f04d7bc085d6284718d88142e68452"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#a13f04d7bc085d6284718d88142e68452">More...</a><br /></td></tr>
<tr class="separator:a13f04d7bc085d6284718d88142e68452"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc9c5375ec2b5de29b92a7aebcee02db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#acc9c5375ec2b5de29b92a7aebcee02db">BIG_384_58_dzero</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:acc9c5375ec2b5de29b92a7aebcee02db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#acc9c5375ec2b5de29b92a7aebcee02db">More...</a><br /></td></tr>
<tr class="separator:acc9c5375ec2b5de29b92a7aebcee02db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ef71839c7a40c5cc0f4692140b06eed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a0ef71839c7a40c5cc0f4692140b06eed">BIG_384_58_one</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a0ef71839c7a40c5cc0f4692140b06eed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#a0ef71839c7a40c5cc0f4692140b06eed">More...</a><br /></td></tr>
<tr class="separator:a0ef71839c7a40c5cc0f4692140b06eed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae108f47f92152fdd03c4b91f11f7e3c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ae108f47f92152fdd03c4b91f11f7e3c5">BIG_384_58_invmod2m</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:ae108f47f92152fdd03c4b91f11f7e3c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#ae108f47f92152fdd03c4b91f11f7e3c5">More...</a><br /></td></tr>
<tr class="separator:ae108f47f92152fdd03c4b91f11f7e3c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa68da70c9329f24cc625b827cd2e693c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aa68da70c9329f24cc625b827cd2e693c">BIG_384_58_add</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z)</td></tr>
<tr class="memdesc:aa68da70c9329f24cc625b827cd2e693c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#aa68da70c9329f24cc625b827cd2e693c">More...</a><br /></td></tr>
<tr class="separator:aa68da70c9329f24cc625b827cd2e693c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dd451771222a49c9c3e3499ca3e9412"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a4dd451771222a49c9c3e3499ca3e9412">BIG_384_58_or</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z)</td></tr>
<tr class="memdesc:a4dd451771222a49c9c3e3499ca3e9412"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#a4dd451771222a49c9c3e3499ca3e9412">More...</a><br /></td></tr>
<tr class="separator:a4dd451771222a49c9c3e3499ca3e9412"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5ab83546289412fe928c96aa65e73b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ab5ab83546289412fe928c96aa65e73b1">BIG_384_58_inc</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int i)</td></tr>
<tr class="memdesc:ab5ab83546289412fe928c96aa65e73b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#ab5ab83546289412fe928c96aa65e73b1">More...</a><br /></td></tr>
<tr class="separator:ab5ab83546289412fe928c96aa65e73b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a56a1492a22aba9398327f4f4fd2c07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a8a56a1492a22aba9398327f4f4fd2c07">BIG_384_58_sub</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z)</td></tr>
<tr class="memdesc:a8a56a1492a22aba9398327f4f4fd2c07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a8a56a1492a22aba9398327f4f4fd2c07">More...</a><br /></td></tr>
<tr class="separator:a8a56a1492a22aba9398327f4f4fd2c07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a084244c33d546f61c2c1b26290d5055b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a084244c33d546f61c2c1b26290d5055b">BIG_384_58_dec</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int i)</td></tr>
<tr class="memdesc:a084244c33d546f61c2c1b26290d5055b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#a084244c33d546f61c2c1b26290d5055b">More...</a><br /></td></tr>
<tr class="separator:a084244c33d546f61c2c1b26290d5055b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2e27604049490a11348eacf65bd219a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ac2e27604049490a11348eacf65bd219a">BIG_384_58_dadd</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> z)</td></tr>
<tr class="memdesc:ac2e27604049490a11348eacf65bd219a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#ac2e27604049490a11348eacf65bd219a">More...</a><br /></td></tr>
<tr class="separator:ac2e27604049490a11348eacf65bd219a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58860dadc5f3b013124854a6f23e5f2c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a58860dadc5f3b013124854a6f23e5f2c">BIG_384_58_dsub</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> z)</td></tr>
<tr class="memdesc:a58860dadc5f3b013124854a6f23e5f2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#a58860dadc5f3b013124854a6f23e5f2c">More...</a><br /></td></tr>
<tr class="separator:a58860dadc5f3b013124854a6f23e5f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79c763f34d8c986f12c11c1bbdb8f3c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a79c763f34d8c986f12c11c1bbdb8f3c1">BIG_384_58_imul</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int i)</td></tr>
<tr class="memdesc:a79c763f34d8c986f12c11c1bbdb8f3c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#a79c763f34d8c986f12c11c1bbdb8f3c1">More...</a><br /></td></tr>
<tr class="separator:a79c763f34d8c986f12c11c1bbdb8f3c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ee909810f49f97be05326902f460307"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a7ee909810f49f97be05326902f460307">BIG_384_58_pmul</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int i)</td></tr>
<tr class="memdesc:a7ee909810f49f97be05326902f460307"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a7ee909810f49f97be05326902f460307">More...</a><br /></td></tr>
<tr class="separator:a7ee909810f49f97be05326902f460307"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a241ffac606d31cd7bba9cd863d6f4710"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a241ffac606d31cd7bba9cd863d6f4710">BIG_384_58_div3</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a241ffac606d31cd7bba9cd863d6f4710"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#a241ffac606d31cd7bba9cd863d6f4710">More...</a><br /></td></tr>
<tr class="separator:a241ffac606d31cd7bba9cd863d6f4710"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad98144baa029fdb2d783325eaf9246e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ad98144baa029fdb2d783325eaf9246e2">BIG_384_58_pxmul</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, int i)</td></tr>
<tr class="memdesc:ad98144baa029fdb2d783325eaf9246e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#ad98144baa029fdb2d783325eaf9246e2">More...</a><br /></td></tr>
<tr class="separator:ad98144baa029fdb2d783325eaf9246e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6e74f74ce26cddf1ebdcb0359b93dc8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ae6e74f74ce26cddf1ebdcb0359b93dc8">BIG_384_58_mul</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z)</td></tr>
<tr class="memdesc:ae6e74f74ce26cddf1ebdcb0359b93dc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#ae6e74f74ce26cddf1ebdcb0359b93dc8">More...</a><br /></td></tr>
<tr class="separator:ae6e74f74ce26cddf1ebdcb0359b93dc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a212c66be3b342eb0db8e56027141f73f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a212c66be3b342eb0db8e56027141f73f">BIG_384_58_smul</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z)</td></tr>
<tr class="memdesc:a212c66be3b342eb0db8e56027141f73f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#a212c66be3b342eb0db8e56027141f73f">More...</a><br /></td></tr>
<tr class="separator:a212c66be3b342eb0db8e56027141f73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aec53c42724703820d1d67b93c0ae55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a5aec53c42724703820d1d67b93c0ae55">BIG_384_58_sqr</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:a5aec53c42724703820d1d67b93c0ae55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#a5aec53c42724703820d1d67b93c0ae55">More...</a><br /></td></tr>
<tr class="separator:a5aec53c42724703820d1d67b93c0ae55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a378e1616fa22f2cb56a2fdab4956b2fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a378e1616fa22f2cb56a2fdab4956b2fa">BIG_384_58_monty</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> a, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> d)</td></tr>
<tr class="memdesc:a378e1616fa22f2cb56a2fdab4956b2fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#a378e1616fa22f2cb56a2fdab4956b2fa">More...</a><br /></td></tr>
<tr class="separator:a378e1616fa22f2cb56a2fdab4956b2fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a629b32231bb3b8599fcb16f681dd199f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a629b32231bb3b8599fcb16f681dd199f">BIG_384_58_shl</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:a629b32231bb3b8599fcb16f681dd199f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a BIG left by any number of bits - input must be normalised, output normalised. <a href="#a629b32231bb3b8599fcb16f681dd199f">More...</a><br /></td></tr>
<tr class="separator:a629b32231bb3b8599fcb16f681dd199f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a243180bd852735ab7f35eb5dd40b32f5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a243180bd852735ab7f35eb5dd40b32f5">BIG_384_58_fshl</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:a243180bd852735ab7f35eb5dd40b32f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast shifts a BIG left by a small number of bits - input must be normalised, output will be normalised. <a href="#a243180bd852735ab7f35eb5dd40b32f5">More...</a><br /></td></tr>
<tr class="separator:a243180bd852735ab7f35eb5dd40b32f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e111c13856057d0ede18c2a93384ac0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a9e111c13856057d0ede18c2a93384ac0">BIG_384_58_dshl</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:a9e111c13856057d0ede18c2a93384ac0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a DBIG left by any number of bits - input must be normalised, output normalised. <a href="#a9e111c13856057d0ede18c2a93384ac0">More...</a><br /></td></tr>
<tr class="separator:a9e111c13856057d0ede18c2a93384ac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae4e464026886b838f7a1bb764db9a05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aae4e464026886b838f7a1bb764db9a05">BIG_384_58_shr</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:aae4e464026886b838f7a1bb764db9a05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a BIG right by any number of bits - input must be normalised, output normalised. <a href="#aae4e464026886b838f7a1bb764db9a05">More...</a><br /></td></tr>
<tr class="separator:aae4e464026886b838f7a1bb764db9a05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11a478af5d2913ab517aed2e9fa971d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a11a478af5d2913ab517aed2e9fa971d8">BIG_384_58_ssn</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> r, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> a, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> m)</td></tr>
<tr class="memdesc:a11a478af5d2913ab517aed2e9fa971d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a11a478af5d2913ab517aed2e9fa971d8">More...</a><br /></td></tr>
<tr class="separator:a11a478af5d2913ab517aed2e9fa971d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f9d30e39044ce32968dfb9befa4cc92"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a5f9d30e39044ce32968dfb9befa4cc92">BIG_384_58_fshr</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:a5f9d30e39044ce32968dfb9befa4cc92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast shifts a BIG right by a small number of bits - input must be normalised, output will be normalised. <a href="#a5f9d30e39044ce32968dfb9befa4cc92">More...</a><br /></td></tr>
<tr class="separator:a5f9d30e39044ce32968dfb9befa4cc92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88d79309341499f275ca18df3068fc72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a88d79309341499f275ca18df3068fc72">BIG_384_58_dshr</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, int s)</td></tr>
<tr class="memdesc:a88d79309341499f275ca18df3068fc72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a DBIG right by any number of bits - input must be normalised, output normalised. <a href="#a88d79309341499f275ca18df3068fc72">More...</a><br /></td></tr>
<tr class="separator:a88d79309341499f275ca18df3068fc72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eff2a947a85c5b0a4314ffb810c22a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a3eff2a947a85c5b0a4314ffb810c22a8">BIG_384_58_split</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> z, int s)</td></tr>
<tr class="memdesc:a3eff2a947a85c5b0a4314ffb810c22a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#a3eff2a947a85c5b0a4314ffb810c22a8">More...</a><br /></td></tr>
<tr class="separator:a3eff2a947a85c5b0a4314ffb810c22a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aea3cbe70ffc3437689860cc0bf42a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a4aea3cbe70ffc3437689860cc0bf42a1">BIG_384_58_norm</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a4aea3cbe70ffc3437689860cc0bf42a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#a4aea3cbe70ffc3437689860cc0bf42a1">More...</a><br /></td></tr>
<tr class="separator:a4aea3cbe70ffc3437689860cc0bf42a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98f4f358132ca7daf604e365d9105075"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a98f4f358132ca7daf604e365d9105075">BIG_384_58_dnorm</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:a98f4f358132ca7daf604e365d9105075"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#a98f4f358132ca7daf604e365d9105075">More...</a><br /></td></tr>
<tr class="separator:a98f4f358132ca7daf604e365d9105075"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba4272e639d67a38c6dfb3ad1af21220"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aba4272e639d67a38c6dfb3ad1af21220">BIG_384_58_comp</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:aba4272e639d67a38c6dfb3ad1af21220"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#aba4272e639d67a38c6dfb3ad1af21220">More...</a><br /></td></tr>
<tr class="separator:aba4272e639d67a38c6dfb3ad1af21220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3835e8b97f792c16d3094a3ec9162ab0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a3835e8b97f792c16d3094a3ec9162ab0">BIG_384_58_dcomp</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y)</td></tr>
<tr class="memdesc:a3835e8b97f792c16d3094a3ec9162ab0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#a3835e8b97f792c16d3094a3ec9162ab0">More...</a><br /></td></tr>
<tr class="separator:a3835e8b97f792c16d3094a3ec9162ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa708054d84909993b289e576f2f21e98"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#aa708054d84909993b289e576f2f21e98">BIG_384_58_nbits</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:aa708054d84909993b289e576f2f21e98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#aa708054d84909993b289e576f2f21e98">More...</a><br /></td></tr>
<tr class="separator:aa708054d84909993b289e576f2f21e98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12f59a1451e98aa457b45a0c9898be97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a12f59a1451e98aa457b45a0c9898be97">BIG_384_58_dnbits</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x)</td></tr>
<tr class="memdesc:a12f59a1451e98aa457b45a0c9898be97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#a12f59a1451e98aa457b45a0c9898be97">More...</a><br /></td></tr>
<tr class="separator:a12f59a1451e98aa457b45a0c9898be97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1f52b936238a122991c3ecd17c5f03e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ad1f52b936238a122991c3ecd17c5f03e">BIG_384_58_mod</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:ad1f52b936238a122991c3ecd17c5f03e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#ad1f52b936238a122991c3ecd17c5f03e">More...</a><br /></td></tr>
<tr class="separator:ad1f52b936238a122991c3ecd17c5f03e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad77d2eb8d74fd8ac4850429740acf402"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ad77d2eb8d74fd8ac4850429740acf402">BIG_384_58_sdiv</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:ad77d2eb8d74fd8ac4850429740acf402"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#ad77d2eb8d74fd8ac4850429740acf402">More...</a><br /></td></tr>
<tr class="separator:ad77d2eb8d74fd8ac4850429740acf402"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add4e36049330cf8ccff38c5eddf27b9e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#add4e36049330cf8ccff38c5eddf27b9e">BIG_384_58_dmod</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:add4e36049330cf8ccff38c5eddf27b9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#add4e36049330cf8ccff38c5eddf27b9e">More...</a><br /></td></tr>
<tr class="separator:add4e36049330cf8ccff38c5eddf27b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc755243d8f636bfbe010e1b9aaa850a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#adc755243d8f636bfbe010e1b9aaa850a">BIG_384_58_ddiv</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:adc755243d8f636bfbe010e1b9aaa850a"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#adc755243d8f636bfbe010e1b9aaa850a">More...</a><br /></td></tr>
<tr class="separator:adc755243d8f636bfbe010e1b9aaa850a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69d23728641290b240082659c30dbc87"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a69d23728641290b240082659c30dbc87">BIG_384_58_parity</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x)</td></tr>
<tr class="memdesc:a69d23728641290b240082659c30dbc87"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a69d23728641290b240082659c30dbc87">More...</a><br /></td></tr>
<tr class="separator:a69d23728641290b240082659c30dbc87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34fd5847ba648bb7e353d166fb21b5a9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a34fd5847ba648bb7e353d166fb21b5a9">BIG_384_58_bit</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int i)</td></tr>
<tr class="memdesc:a34fd5847ba648bb7e353d166fb21b5a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a34fd5847ba648bb7e353d166fb21b5a9">More...</a><br /></td></tr>
<tr class="separator:a34fd5847ba648bb7e353d166fb21b5a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13ae985ae407685cfb61a2461a4da105"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a13ae985ae407685cfb61a2461a4da105">BIG_384_58_lastbits</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int n)</td></tr>
<tr class="memdesc:a13ae985ae407685cfb61a2461a4da105"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a13ae985ae407685cfb61a2461a4da105">More...</a><br /></td></tr>
<tr class="separator:a13ae985ae407685cfb61a2461a4da105"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90aa6e033eaedc10ae5933cf6d434dc3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a90aa6e033eaedc10ae5933cf6d434dc3">BIG_384_58_random</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a90aa6e033eaedc10ae5933cf6d434dc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#a90aa6e033eaedc10ae5933cf6d434dc3">More...</a><br /></td></tr>
<tr class="separator:a90aa6e033eaedc10ae5933cf6d434dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74f46214730642d512098918ec893ff0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a74f46214730642d512098918ec893ff0">BIG_384_58_randomnum</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a74f46214730642d512098918ec893ff0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an unbiased random BIG from a random number generator, reduced with respect to a modulus. <a href="#a74f46214730642d512098918ec893ff0">More...</a><br /></td></tr>
<tr class="separator:a74f46214730642d512098918ec893ff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c46609f6a9c888d7de89d3e53a8e12a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a2c46609f6a9c888d7de89d3e53a8e12a">BIG_384_58_modmul</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:a2c46609f6a9c888d7de89d3e53a8e12a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#a2c46609f6a9c888d7de89d3e53a8e12a">More...</a><br /></td></tr>
<tr class="separator:a2c46609f6a9c888d7de89d3e53a8e12a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99e8598fcacae65ca34af9b96e91b359"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a99e8598fcacae65ca34af9b96e91b359">BIG_384_58_moddiv</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> z, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:a99e8598fcacae65ca34af9b96e91b359"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#a99e8598fcacae65ca34af9b96e91b359">More...</a><br /></td></tr>
<tr class="separator:a99e8598fcacae65ca34af9b96e91b359"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09730e6a4ebd020f3343ce6d9d92bcb0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a09730e6a4ebd020f3343ce6d9d92bcb0">BIG_384_58_modsqr</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:a09730e6a4ebd020f3343ce6d9d92bcb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#a09730e6a4ebd020f3343ce6d9d92bcb0">More...</a><br /></td></tr>
<tr class="separator:a09730e6a4ebd020f3343ce6d9d92bcb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3e2a53632c35ab3d7c8dc196050084d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#ae3e2a53632c35ab3d7c8dc196050084d">BIG_384_58_modneg</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:ae3e2a53632c35ab3d7c8dc196050084d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#ae3e2a53632c35ab3d7c8dc196050084d">More...</a><br /></td></tr>
<tr class="separator:ae3e2a53632c35ab3d7c8dc196050084d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24ddff680ad72280b2c5f74039396944"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a24ddff680ad72280b2c5f74039396944">BIG_384_58_jacobi</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y)</td></tr>
<tr class="memdesc:a24ddff680ad72280b2c5f74039396944"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#a24ddff680ad72280b2c5f74039396944">More...</a><br /></td></tr>
<tr class="separator:a24ddff680ad72280b2c5f74039396944"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a1e7aea63e90f03b07eedc3185fb1d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a5a1e7aea63e90f03b07eedc3185fb1d4">BIG_384_58_invmodp</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> y, <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> n)</td></tr>
<tr class="memdesc:a5a1e7aea63e90f03b07eedc3185fb1d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#a5a1e7aea63e90f03b07eedc3185fb1d4">More...</a><br /></td></tr>
<tr class="separator:a5a1e7aea63e90f03b07eedc3185fb1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b9ba02e7f5ccc29304fecf84f19b50b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a5b9ba02e7f5ccc29304fecf84f19b50b">BIG_384_58_mod2m</a> (<a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a> x, int m)</td></tr>
<tr class="memdesc:a5b9ba02e7f5ccc29304fecf84f19b50b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a5b9ba02e7f5ccc29304fecf84f19b50b">More...</a><br /></td></tr>
<tr class="separator:a5b9ba02e7f5ccc29304fecf84f19b50b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fb80dc9b4342ab0ed2cafa40c2f9c48"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__58_8h.html#a6fb80dc9b4342ab0ed2cafa40c2f9c48">BIG_384_58_dmod2m</a> (<a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a> x, int m)</td></tr>
<tr class="memdesc:a6fb80dc9b4342ab0ed2cafa40c2f9c48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a6fb80dc9b4342ab0ed2cafa40c2f9c48">More...</a><br /></td></tr>
<tr class="separator:a6fb80dc9b4342ab0ed2cafa40c2f9c48"><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">Macro Definition Documentation</h2>
<a id="af101e9b3ede482bfe16e1ddab5bf39bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af101e9b3ede482bfe16e1ddab5bf39bb">&#9670;&nbsp;</a></span>BIGBITS_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_384_58&#160;&#160;&#160;(8*<a class="el" href="config__big__384__58_8h.html#a231158cd33825cff286c2406336e0224">MODBYTES_384_58</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="a8a96d1a995cdf624142dbc7661dc61c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a96d1a995cdf624142dbc7661dc61c8">&#9670;&nbsp;</a></span>BMASK_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_384_58&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="a7bbc1e57f9520e560c34d1108871c3c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bbc1e57f9520e560c34d1108871c3c8">&#9670;&nbsp;</a></span>DNLEN_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_384_58&#160;&#160;&#160;2*<a class="el" href="big__384__58_8h.html#a82c59c9baadb3c5d881618296c935630">NLEN_384_58</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="ac8efaee7fe7da09d317cedb6ef0f2cc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8efaee7fe7da09d317cedb6ef0f2cc4">&#9670;&nbsp;</a></span>HBITS_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_384_58&#160;&#160;&#160;(<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="a442aeb9af2b58dcd6894cb61a3a9bd51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a442aeb9af2b58dcd6894cb61a3a9bd51">&#9670;&nbsp;</a></span>HMASK_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_384_58&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__58_8h.html#ac8efaee7fe7da09d317cedb6ef0f2cc4">HBITS_384_58</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="af4327ee14410cfee8eb9f247e40cd284"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4327ee14410cfee8eb9f247e40cd284">&#9670;&nbsp;</a></span>NEXCESS_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_384_58&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>-1))</td>
</tr>
</table>
</div><div class="memdoc">
<p>2^(CHUNK-BASEBITS-1) - digit cannot be multiplied by more than this before normalisation </p>
</div>
</div>
<a id="a82c59c9baadb3c5d881618296c935630"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82c59c9baadb3c5d881618296c935630">&#9670;&nbsp;</a></span>NLEN_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_384_58&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__58_8h.html#a231158cd33825cff286c2406336e0224">MODBYTES_384_58</a>-1)/<a class="el" href="config__big__384__58_8h.html#aef3a9fbfcd02db7e7fae8c77794c2fec">BASEBITS_384_58</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ab8c68dbf8612f8f005c402a289c5da31"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8c68dbf8612f8f005c402a289c5da31">&#9670;&nbsp;</a></span>BIG_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_58[<a class="el" href="big__384__58_8h.html#a82c59c9baadb3c5d881618296c935630">NLEN_384_58</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="ab914db55caa046b50795e836a4a052ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab914db55caa046b50795e836a4a052ea">&#9670;&nbsp;</a></span>DBIG_384_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> DBIG_384_58[<a class="el" href="big__384__58_8h.html#a7bbc1e57f9520e560c34d1108871c3c8">DNLEN_384_58</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type DBIG as array of chunks </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="aa68da70c9329f24cc625b827cd2e693c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa68da70c9329f24cc625b827cd2e693c">&#9670;&nbsp;</a></span>BIG_384_58_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>BIG number, sum of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a34fd5847ba648bb7e353d166fb21b5a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34fd5847ba648bb7e353d166fb21b5a9">&#9670;&nbsp;</a></span>BIG_384_58_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>i</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">x</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>the bit of x to be returned </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="a44f7d12534086593a5cd3a3cd4a658c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44f7d12534086593a5cd3a3cd4a658c4">&#9670;&nbsp;</a></span>BIG_384_58_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</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>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aba4272e639d67a38c6dfb3ad1af21220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba4272e639d67a38c6dfb3ad1af21220">&#9670;&nbsp;</a></span>BIG_384_58_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first BIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second BIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="a3f6f4393c14a8a46adafe62e7ccb8b69"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f6f4393c14a8a46adafe62e7ccb8b69">&#9670;&nbsp;</a></span>BIG_384_58_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a47173fb66dd59791d52de7ce3e028489"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47173fb66dd59791d52de7ce3e028489">&#9670;&nbsp;</a></span>BIG_384_58_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</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>Conditionally swaps parameters in constant time (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>swap takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac2e27604049490a11348eacf65bd219a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2e27604049490a11348eacf65bd219a">&#9670;&nbsp;</a></span>BIG_384_58_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>DBIG number, sum of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a24095a62da55894721f08bb532f345e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24095a62da55894721f08bb532f345e0">&#9670;&nbsp;</a></span>BIG_384_58_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</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>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
<tr><td class="paramname">y</td><td>another DBIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3835e8b97f792c16d3094a3ec9162ab0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3835e8b97f792c16d3094a3ec9162ab0">&#9670;&nbsp;</a></span>BIG_384_58_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first DBIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second DBIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="a292844e136042a363d11b252a0975f62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a292844e136042a363d11b252a0975f62">&#9670;&nbsp;</a></span>BIG_384_58_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="adc755243d8f636bfbe010e1b9aaa850a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc755243d8f636bfbe010e1b9aaa850a">&#9670;&nbsp;</a></span>BIG_384_58_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a084244c33d546f61c2c1b26290d5055b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a084244c33d546f61c2c1b26290d5055b">&#9670;&nbsp;</a></span>BIG_384_58_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>i</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">x</td><td>BIG number to be decremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae47259dfc64c5e59f9343101dd7fe1c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae47259dfc64c5e59f9343101dd7fe1c7">&#9670;&nbsp;</a></span>BIG_384_58_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acd9a14edae6ce1432782af539d42c1e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd9a14edae6ce1432782af539d42c1e9">&#9670;&nbsp;</a></span>BIG_384_58_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="a241ffac606d31cd7bba9cd863d6f4710"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a241ffac606d31cd7bba9cd863d6f4710">&#9670;&nbsp;</a></span>BIG_384_58_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Remainder </dd></dl>
</div>
</div>
<a id="add4e36049330cf8ccff38c5eddf27b9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add4e36049330cf8ccff38c5eddf27b9e">&#9670;&nbsp;</a></span>BIG_384_58_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y mod n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6fb80dc9b4342ab0ed2cafa40c2f9c48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fb80dc9b4342ab0ed2cafa40c2f9c48">&#9670;&nbsp;</a></span>BIG_384_58_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x DBIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="a12f59a1451e98aa457b45a0c9898be97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a12f59a1451e98aa457b45a0c9898be97">&#9670;&nbsp;</a></span>BIG_384_58_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="a98f4f358132ca7daf604e365d9105075"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98f4f358132ca7daf604e365d9105075">&#9670;&nbsp;</a></span>BIG_384_58_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input DBIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a630f7cf05c1bd2fa4885e1751502177a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a630f7cf05c1bd2fa4885e1751502177a">&#9670;&nbsp;</a></span>BIG_384_58_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad2926a6467657bf033322f2362d2fb12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2926a6467657bf033322f2362d2fb12">&#9670;&nbsp;</a></span>BIG_384_58_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aab4faaab0b749ceca584142f2b737504"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab4faaab0b749ceca584142f2b737504">&#9670;&nbsp;</a></span>BIG_384_58_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9e111c13856057d0ede18c2a93384ac0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e111c13856057d0ede18c2a93384ac0">&#9670;&nbsp;</a></span>BIG_384_58_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a88d79309341499f275ca18df3068fc72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88d79309341499f275ca18df3068fc72">&#9670;&nbsp;</a></span>BIG_384_58_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a58860dadc5f3b013124854a6f23e5f2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58860dadc5f3b013124854a6f23e5f2c">&#9670;&nbsp;</a></span>BIG_384_58_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>DBIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa71228c81fe53b25def57a78bfb86e80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa71228c81fe53b25def57a78bfb86e80">&#9670;&nbsp;</a></span>BIG_384_58_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acc9c5375ec2b5de29b92a7aebcee02db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc9c5375ec2b5de29b92a7aebcee02db">&#9670;&nbsp;</a></span>BIG_384_58_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>DBIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af2d2989242c0d216a88b51967897e050"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2d2989242c0d216a88b51967897e050">&#9670;&nbsp;</a></span>BIG_384_58_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</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">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a43a58dff669431b77cb732a7264f3e73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43a58dff669431b77cb732a7264f3e73">&#9670;&nbsp;</a></span>BIG_384_58_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a243180bd852735ab7f35eb5dd40b32f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a243180bd852735ab7f35eb5dd40b32f5">&#9670;&nbsp;</a></span>BIG_384_58_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflow bits </dd></dl>
</div>
</div>
<a id="a5f9d30e39044ce32968dfb9befa4cc92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f9d30e39044ce32968dfb9befa4cc92">&#9670;&nbsp;</a></span>BIG_384_58_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Shifted out bits </dd></dl>
</div>
</div>
<a id="a79c763f34d8c986f12c11c1bbdb8f3c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79c763f34d8c986f12c11c1bbdb8f3c1">&#9670;&nbsp;</a></span>BIG_384_58_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</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">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab5ab83546289412fe928c96aa65e73b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5ab83546289412fe928c96aa65e73b1">&#9670;&nbsp;</a></span>BIG_384_58_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>i</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">x</td><td>BIG number to be incremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae108f47f92152fdd03c4b91f11f7e3c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae108f47f92152fdd03c4b91f11f7e3c5">&#9670;&nbsp;</a></span>BIG_384_58_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number to be inverted </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a5a1e7aea63e90f03b07eedc3185fb1d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a1e7aea63e90f03b07eedc3185fb1d4">&#9670;&nbsp;</a></span>BIG_384_58_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular Inversion - This is slow. Uses binary method. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = 1/y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a95b36449d7c9b454aa7078ee3d315440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95b36449d7c9b454aa7078ee3d315440">&#9670;&nbsp;</a></span>BIG_384_58_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if one, else returns 0 </dd></dl>
</div>
</div>
<a id="a085ab7b1ab27484e4a7c7140feb60187"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a085ab7b1ab27484e4a7c7140feb60187">&#9670;&nbsp;</a></span>BIG_384_58_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="a24ddff680ad72280b2c5f74039396944"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24ddff680ad72280b2c5f74039396944">&#9670;&nbsp;</a></span>BIG_384_58_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Jacobi symbol, -1,0 or 1 </dd></dl>
</div>
</div>
<a id="a13ae985ae407685cfb61a2461a4da105"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13ae985ae407685cfb61a2461a4da105">&#9670;&nbsp;</a></span>BIG_384_58_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>n</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">x</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>number of bits to return. Assumed to be less than BASEBITS. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>least significant n bits as an integer </dd></dl>
</div>
</div>
<a id="ad1f52b936238a122991c3ecd17c5f03e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1f52b936238a122991c3ecd17c5f03e">&#9670;&nbsp;</a></span>BIG_384_58_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be reduced mod n </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a5b9ba02e7f5ccc29304fecf84f19b50b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b9ba02e7f5ccc29304fecf84f19b50b">&#9670;&nbsp;</a></span>BIG_384_58_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x BIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="a99e8598fcacae65ca34af9b96e91b359"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99e8598fcacae65ca34af9b96e91b359">&#9670;&nbsp;</a></span>BIG_384_58_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular division </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2c46609f6a9c888d7de89d3e53a8e12a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c46609f6a9c888d7de89d3e53a8e12a">&#9670;&nbsp;</a></span>BIG_384_58_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>brief return NAF (Non-Adjacent-Form) value as +/- 1, 3 or 5, inputs must be normalised</p>
<p>Given x and 3*x extracts NAF value from given bit position, and returns number of bits processed, and number of trailing zeros detected if any param x BIG number param x3 BIG number, three times x param i bit position param nbs pointer to integer returning number of bits processed param nzs pointer to integer returning number of trailing 0s return + or - 1, 3 or 5Slow method for modular multiplication </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y*z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae3e2a53632c35ab3d7c8dc196050084d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3e2a53632c35ab3d7c8dc196050084d">&#9670;&nbsp;</a></span>BIG_384_58_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular negation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = -y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a09730e6a4ebd020f3343ce6d9d92bcb0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09730e6a4ebd020f3343ce6d9d92bcb0">&#9670;&nbsp;</a></span>BIG_384_58_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular squaring </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y^2 mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a378e1616fa22f2cb56a2fdab4956b2fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a378e1616fa22f2cb56a2fdab4956b2fa">&#9670;&nbsp;</a></span>BIG_384_58_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>md</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td>
<td class="paramname"><em>MC</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>d</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">a</td><td>BIG number, reduction of a BIG </td></tr>
<tr><td class="paramname">md</td><td>BIG number, the modulus </td></tr>
<tr><td class="paramname">MC</td><td>the Montgomery Constant </td></tr>
<tr><td class="paramname">d</td><td>DBIG number to be reduced </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae6e74f74ce26cddf1ebdcb0359b93dc8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6e74f74ce26cddf1ebdcb0359b93dc8">&#9670;&nbsp;</a></span>BIG_384_58_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa708054d84909993b289e576f2f21e98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa708054d84909993b289e576f2f21e98">&#9670;&nbsp;</a></span>BIG_384_58_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="a4aea3cbe70ffc3437689860cc0bf42a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4aea3cbe70ffc3437689860cc0bf42a1">&#9670;&nbsp;</a></span>BIG_384_58_norm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_58_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input BIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0ef71839c7a40c5cc0f4692140b06eed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ef71839c7a40c5cc0f4692140b06eed">&#9670;&nbsp;</a></span>BIG_384_58_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number to be set to one. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4dd451771222a49c9c3e3499ca3e9412"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4dd451771222a49c9c3e3499ca3e9412">&#9670;&nbsp;</a></span>BIG_384_58_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>BIG number, or of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6af5e5780b8fdd16090f1c39ef59d472"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6af5e5780b8fdd16090f1c39ef59d472">&#9670;&nbsp;</a></span>BIG_384_58_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a69d23728641290b240082659c30dbc87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69d23728641290b240082659c30dbc87">&#9670;&nbsp;</a></span>BIG_384_58_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="a7ee909810f49f97be05326902f460307"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ee909810f49f97be05326902f460307">&#9670;&nbsp;</a></span>BIG_384_58_pmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_58_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</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">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflowing bits </dd></dl>
</div>
</div>
<a id="ad98144baa029fdb2d783325eaf9246e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad98144baa029fdb2d783325eaf9246e2">&#9670;&nbsp;</a></span>BIG_384_58_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</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">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a90aa6e033eaedc10ae5933cf6d434dc3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90aa6e033eaedc10ae5933cf6d434dc3">&#9670;&nbsp;</a></span>BIG_384_58_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a74f46214730642d512098918ec893ff0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74f46214730642d512098918ec893ff0">&#9670;&nbsp;</a></span>BIG_384_58_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4c17d65c22198c489aa0ba8f2a0b9e5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c17d65c22198c489aa0ba8f2a0b9e5d">&#9670;&nbsp;</a></span>BIG_384_58_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9452ad916f4080a86bb036147be2a0cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9452ad916f4080a86bb036147be2a0cd">&#9670;&nbsp;</a></span>BIG_384_58_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number in ROM </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4b3b94899d48922a8972a9c8e1031c2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b3b94899d48922a8972a9c8e1031c2e">&#9670;&nbsp;</a></span>BIG_384_58_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad77d2eb8d74fd8ac4850429740acf402"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad77d2eb8d74fd8ac4850429740acf402">&#9670;&nbsp;</a></span>BIG_384_58_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be divided by n </td></tr>
<tr><td class="paramname">n</td><td>The Divisor </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2abdf434dac4cfef0e3bc0e4e287a518"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2abdf434dac4cfef0e3bc0e4e287a518">&#9670;&nbsp;</a></span>BIG_384_58_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a629b32231bb3b8599fcb16f681dd199f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a629b32231bb3b8599fcb16f681dd199f">&#9670;&nbsp;</a></span>BIG_384_58_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aae4e464026886b838f7a1bb764db9a05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae4e464026886b838f7a1bb764db9a05">&#9670;&nbsp;</a></span>BIG_384_58_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a212c66be3b342eb0db8e56027141f73f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a212c66be3b342eb0db8e56027141f73f">&#9670;&nbsp;</a></span>BIG_384_58_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that the product must fit into a BIG, and x must be distinct from y and z </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3eff2a947a85c5b0a4314ffb810c22a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3eff2a947a85c5b0a4314ffb810c22a8">&#9670;&nbsp;</a></span>BIG_384_58_split()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_58_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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>Internal function. The value of s must be approximately in the middle of the DBIG. Typically used to extract z mod 2^MODBITS and z/2^MODBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, top half of z </td></tr>
<tr><td class="paramname">y</td><td>BIG number, bottom half of z </td></tr>
<tr><td class="paramname">z</td><td>DBIG number to be split in two. </td></tr>
<tr><td class="paramname">s</td><td>Bit position at which to split </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>carry-out from top half </dd></dl>
</div>
</div>
<a id="a5aec53c42724703820d1d67b93c0ae55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5aec53c42724703820d1d67b93c0ae55">&#9670;&nbsp;</a></span>BIG_384_58_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab914db55caa046b50795e836a4a052ea">DBIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, square of a BIG </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be squared </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a11a478af5d2913ab517aed2e9fa971d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11a478af5d2913ab517aed2e9fa971d8">&#9670;&nbsp;</a></span>BIG_384_58_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_58_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>m</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">r</td><td>BIG number normalised output </td></tr>
<tr><td class="paramname">a</td><td>BIG number to be subtracted from </td></tr>
<tr><td class="paramname">m</td><td>BIG number to be shifted and subtracted </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>sign of r </dd></dl>
</div>
</div>
<a id="a8a56a1492a22aba9398327f4f4fd2c07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a56a1492a22aba9398327f4f4fd2c07">&#9670;&nbsp;</a></span>BIG_384_58_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_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="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>z</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">x</td><td>BIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6fed12fb7988a0dd95e7fc46ceda3fb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fed12fb7988a0dd95e7fc46ceda3fb1">&#9670;&nbsp;</a></span>BIG_384_58_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_toBytes </td>
<td>(</td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a13f04d7bc085d6284718d88142e68452"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13f04d7bc085d6284718d88142e68452">&#9670;&nbsp;</a></span>BIG_384_58_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_58_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__58_8h.html#ab8c68dbf8612f8f005c402a289c5da31">BIG_384_58</a>&#160;</td>
<td class="paramname"><em>x</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">x</td><td>BIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</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>