blob: af4fac65be5283695c0b7333652438bf09835d2f [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: big_384_56.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">AMCL
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_df7310d1a865926cc859bcfb1880083f.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#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_56.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__56_8h_source.html">config_big_384_56.h</a>&quot;</code><br />
</div>
<p><a href="big__384__56_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:a6e1353243985f68f42cdf9be09b90141"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a6e1353243985f68f42cdf9be09b90141">BIGBITS_384_56</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__384__56_8h.html#ab097d53a21c3885285dbb6c6c72b608d">MODBYTES_384_56</a>)</td></tr>
<tr class="separator:a6e1353243985f68f42cdf9be09b90141"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e1bda709894ea23a924da6c5b191748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a5e1bda709894ea23a924da6c5b191748">NLEN_384_56</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__56_8h.html#ab097d53a21c3885285dbb6c6c72b608d">MODBYTES_384_56</a>-1)/<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>))</td></tr>
<tr class="separator:a5e1bda709894ea23a924da6c5b191748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8cf9396dc122f3521a29bc4e2e5aa22"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#af8cf9396dc122f3521a29bc4e2e5aa22">DNLEN_384_56</a>&#160;&#160;&#160;2*<a class="el" href="big__384__56_8h.html#a5e1bda709894ea23a924da6c5b191748">NLEN_384_56</a></td></tr>
<tr class="separator:af8cf9396dc122f3521a29bc4e2e5aa22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73e44860541e0d07e82f012bbb29c0da"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a73e44860541e0d07e82f012bbb29c0da">BMASK_384_56</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>)-1)</td></tr>
<tr class="separator:a73e44860541e0d07e82f012bbb29c0da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a6ef8568e207c971f9c23b06673b778"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a5a6ef8568e207c971f9c23b06673b778">NEXCESS_384_56</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>-1))</td></tr>
<tr class="separator:a5a6ef8568e207c971f9c23b06673b778"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bb9352ea46877e21288144972438d7b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a4bb9352ea46877e21288144972438d7b">HBITS_384_56</a>&#160;&#160;&#160;(<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>/2)</td></tr>
<tr class="separator:a4bb9352ea46877e21288144972438d7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af631d7e86602f736b0dcf8de4eb40498"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#af631d7e86602f736b0dcf8de4eb40498">HMASK_384_56</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__56_8h.html#a4bb9352ea46877e21288144972438d7b">HBITS_384_56</a>)-1)</td></tr>
<tr class="separator:af631d7e86602f736b0dcf8de4eb40498"><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:a84b175c07377e6d2a06d66603d2e719c"><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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a>[<a class="el" href="big__384__56_8h.html#a5e1bda709894ea23a924da6c5b191748">NLEN_384_56</a>]</td></tr>
<tr class="separator:a84b175c07377e6d2a06d66603d2e719c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c518f0c183c5deeb8cf6f8245d0d40c"><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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a>[<a class="el" href="big__384__56_8h.html#af8cf9396dc122f3521a29bc4e2e5aa22">DNLEN_384_56</a>]</td></tr>
<tr class="separator:a6c518f0c183c5deeb8cf6f8245d0d40c"><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:a501d069a9b78be0c8ad093314e1f7bb3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a501d069a9b78be0c8ad093314e1f7bb3">BIG_384_56_iszilch</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:a501d069a9b78be0c8ad093314e1f7bb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a501d069a9b78be0c8ad093314e1f7bb3">More...</a><br /></td></tr>
<tr class="separator:a501d069a9b78be0c8ad093314e1f7bb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a904972dd817ed39992151c2d9c40e530"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a904972dd817ed39992151c2d9c40e530">BIG_384_56_isunity</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:a904972dd817ed39992151c2d9c40e530"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#a904972dd817ed39992151c2d9c40e530">More...</a><br /></td></tr>
<tr class="separator:a904972dd817ed39992151c2d9c40e530"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c4e0e30b5871b09f9dc6feba9465fd3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a4c4e0e30b5871b09f9dc6feba9465fd3">BIG_384_56_diszilch</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:a4c4e0e30b5871b09f9dc6feba9465fd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#a4c4e0e30b5871b09f9dc6feba9465fd3">More...</a><br /></td></tr>
<tr class="separator:a4c4e0e30b5871b09f9dc6feba9465fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9694ea00361b6487cabde26235ae0ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ad9694ea00361b6487cabde26235ae0ae">BIG_384_56_output</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:ad9694ea00361b6487cabde26235ae0ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#ad9694ea00361b6487cabde26235ae0ae">More...</a><br /></td></tr>
<tr class="separator:ad9694ea00361b6487cabde26235ae0ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1909f6c026350b5231eb12c6b14565"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#afa1909f6c026350b5231eb12c6b14565">BIG_384_56_rawoutput</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:afa1909f6c026350b5231eb12c6b14565"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#afa1909f6c026350b5231eb12c6b14565">More...</a><br /></td></tr>
<tr class="separator:afa1909f6c026350b5231eb12c6b14565"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd8bddc35d4bda42867f0e9a4eb07874"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#abd8bddc35d4bda42867f0e9a4eb07874">BIG_384_56_cswap</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int s)</td></tr>
<tr class="memdesc:abd8bddc35d4bda42867f0e9a4eb07874"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#abd8bddc35d4bda42867f0e9a4eb07874">More...</a><br /></td></tr>
<tr class="separator:abd8bddc35d4bda42867f0e9a4eb07874"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9b8213b5add9582a664fcd58ff80ef2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ad9b8213b5add9582a664fcd58ff80ef2">BIG_384_56_cmove</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int s)</td></tr>
<tr class="memdesc:ad9b8213b5add9582a664fcd58ff80ef2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#ad9b8213b5add9582a664fcd58ff80ef2">More...</a><br /></td></tr>
<tr class="separator:ad9b8213b5add9582a664fcd58ff80ef2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22a6d481288f98dfb1c985aaf4c34a12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a22a6d481288f98dfb1c985aaf4c34a12">BIG_384_56_dcmove</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int s)</td></tr>
<tr class="memdesc:a22a6d481288f98dfb1c985aaf4c34a12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#a22a6d481288f98dfb1c985aaf4c34a12">More...</a><br /></td></tr>
<tr class="separator:a22a6d481288f98dfb1c985aaf4c34a12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7cdb8bcf992f08fd7a089ef7ef67f06"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ab7cdb8bcf992f08fd7a089ef7ef67f06">BIG_384_56_toBytes</a> (char *a, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:ab7cdb8bcf992f08fd7a089ef7ef67f06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#ab7cdb8bcf992f08fd7a089ef7ef67f06">More...</a><br /></td></tr>
<tr class="separator:ab7cdb8bcf992f08fd7a089ef7ef67f06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b3ba939ef56607de9561c736bb45b06"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a8b3ba939ef56607de9561c736bb45b06">BIG_384_56_fromBytes</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, char *a)</td></tr>
<tr class="memdesc:a8b3ba939ef56607de9561c736bb45b06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#a8b3ba939ef56607de9561c736bb45b06">More...</a><br /></td></tr>
<tr class="separator:a8b3ba939ef56607de9561c736bb45b06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2fffed8ee3c80a87427a7816dccd458"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ad2fffed8ee3c80a87427a7816dccd458">BIG_384_56_fromBytesLen</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, char *a, int s)</td></tr>
<tr class="memdesc:ad2fffed8ee3c80a87427a7816dccd458"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#ad2fffed8ee3c80a87427a7816dccd458">More...</a><br /></td></tr>
<tr class="separator:ad2fffed8ee3c80a87427a7816dccd458"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8a23de43097c9bf56cb0dbdd0a3380b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ad8a23de43097c9bf56cb0dbdd0a3380b">BIG_384_56_dfromBytesLen</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, char *a, int s)</td></tr>
<tr class="memdesc:ad8a23de43097c9bf56cb0dbdd0a3380b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#ad8a23de43097c9bf56cb0dbdd0a3380b">More...</a><br /></td></tr>
<tr class="separator:ad8a23de43097c9bf56cb0dbdd0a3380b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55fc7488d3c7d8530495e9c077a473a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a55fc7488d3c7d8530495e9c077a473a9">BIG_384_56_doutput</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:a55fc7488d3c7d8530495e9c077a473a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a55fc7488d3c7d8530495e9c077a473a9">More...</a><br /></td></tr>
<tr class="separator:a55fc7488d3c7d8530495e9c077a473a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d94dd0fad95639cfa1b221ecbf9d282"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a6d94dd0fad95639cfa1b221ecbf9d282">BIG_384_56_drawoutput</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:a6d94dd0fad95639cfa1b221ecbf9d282"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a6d94dd0fad95639cfa1b221ecbf9d282">More...</a><br /></td></tr>
<tr class="separator:a6d94dd0fad95639cfa1b221ecbf9d282"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab90026aff678dcc7ab1d1c2d7167f296"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ab90026aff678dcc7ab1d1c2d7167f296">BIG_384_56_rcopy</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, const <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:ab90026aff678dcc7ab1d1c2d7167f296"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#ab90026aff678dcc7ab1d1c2d7167f296">More...</a><br /></td></tr>
<tr class="separator:ab90026aff678dcc7ab1d1c2d7167f296"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99265daad1062824f89c9f163e40b33e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a99265daad1062824f89c9f163e40b33e">BIG_384_56_copy</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:a99265daad1062824f89c9f163e40b33e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#a99265daad1062824f89c9f163e40b33e">More...</a><br /></td></tr>
<tr class="separator:a99265daad1062824f89c9f163e40b33e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41e18ce29fb09e100b00dcffb8304b6a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a41e18ce29fb09e100b00dcffb8304b6a">BIG_384_56_dcopy</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y)</td></tr>
<tr class="memdesc:a41e18ce29fb09e100b00dcffb8304b6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a41e18ce29fb09e100b00dcffb8304b6a">More...</a><br /></td></tr>
<tr class="separator:a41e18ce29fb09e100b00dcffb8304b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af97d5f512b479452b76c8c395cc526da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#af97d5f512b479452b76c8c395cc526da">BIG_384_56_dsucopy</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:af97d5f512b479452b76c8c395cc526da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#af97d5f512b479452b76c8c395cc526da">More...</a><br /></td></tr>
<tr class="separator:af97d5f512b479452b76c8c395cc526da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c1897e5941d8b5a6f12665f240a76b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a7c1897e5941d8b5a6f12665f240a76b6">BIG_384_56_dscopy</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:a7c1897e5941d8b5a6f12665f240a76b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#a7c1897e5941d8b5a6f12665f240a76b6">More...</a><br /></td></tr>
<tr class="separator:a7c1897e5941d8b5a6f12665f240a76b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a407e94ca63a7bff4efacf40e3e42662d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a407e94ca63a7bff4efacf40e3e42662d">BIG_384_56_sdcopy</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y)</td></tr>
<tr class="memdesc:a407e94ca63a7bff4efacf40e3e42662d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#a407e94ca63a7bff4efacf40e3e42662d">More...</a><br /></td></tr>
<tr class="separator:a407e94ca63a7bff4efacf40e3e42662d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83dc4374d0ff05900d9c1f37abf2ca0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a83dc4374d0ff05900d9c1f37abf2ca0e">BIG_384_56_sducopy</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y)</td></tr>
<tr class="memdesc:a83dc4374d0ff05900d9c1f37abf2ca0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#a83dc4374d0ff05900d9c1f37abf2ca0e">More...</a><br /></td></tr>
<tr class="separator:a83dc4374d0ff05900d9c1f37abf2ca0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2cc31c4eee2db7c34437af01cb0b09b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ac2cc31c4eee2db7c34437af01cb0b09b">BIG_384_56_zero</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:ac2cc31c4eee2db7c34437af01cb0b09b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#ac2cc31c4eee2db7c34437af01cb0b09b">More...</a><br /></td></tr>
<tr class="separator:ac2cc31c4eee2db7c34437af01cb0b09b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a29993b9800bc5fed165682d13fa5da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a7a29993b9800bc5fed165682d13fa5da">BIG_384_56_dzero</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:a7a29993b9800bc5fed165682d13fa5da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a7a29993b9800bc5fed165682d13fa5da">More...</a><br /></td></tr>
<tr class="separator:a7a29993b9800bc5fed165682d13fa5da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2195a8253e0c58b8bb147deb707dcd2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#af2195a8253e0c58b8bb147deb707dcd2">BIG_384_56_one</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:af2195a8253e0c58b8bb147deb707dcd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#af2195a8253e0c58b8bb147deb707dcd2">More...</a><br /></td></tr>
<tr class="separator:af2195a8253e0c58b8bb147deb707dcd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abba3c5d97b761e44d268d6307f7ba3e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#abba3c5d97b761e44d268d6307f7ba3e2">BIG_384_56_invmod2m</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:abba3c5d97b761e44d268d6307f7ba3e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#abba3c5d97b761e44d268d6307f7ba3e2">More...</a><br /></td></tr>
<tr class="separator:abba3c5d97b761e44d268d6307f7ba3e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe5a8c4ad2eea34b6dc4716646f77e18"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#afe5a8c4ad2eea34b6dc4716646f77e18">BIG_384_56_add</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z)</td></tr>
<tr class="memdesc:afe5a8c4ad2eea34b6dc4716646f77e18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#afe5a8c4ad2eea34b6dc4716646f77e18">More...</a><br /></td></tr>
<tr class="separator:afe5a8c4ad2eea34b6dc4716646f77e18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfcc567d1954ac2f544c267e48e711fd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#acfcc567d1954ac2f544c267e48e711fd">BIG_384_56_or</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z)</td></tr>
<tr class="memdesc:acfcc567d1954ac2f544c267e48e711fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#acfcc567d1954ac2f544c267e48e711fd">More...</a><br /></td></tr>
<tr class="separator:acfcc567d1954ac2f544c267e48e711fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac341a05be2a42320d3144cecb595166f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ac341a05be2a42320d3144cecb595166f">BIG_384_56_inc</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int i)</td></tr>
<tr class="memdesc:ac341a05be2a42320d3144cecb595166f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#ac341a05be2a42320d3144cecb595166f">More...</a><br /></td></tr>
<tr class="separator:ac341a05be2a42320d3144cecb595166f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fc55eb658f35dbc23c2129d9304f21e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a2fc55eb658f35dbc23c2129d9304f21e">BIG_384_56_sub</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z)</td></tr>
<tr class="memdesc:a2fc55eb658f35dbc23c2129d9304f21e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a2fc55eb658f35dbc23c2129d9304f21e">More...</a><br /></td></tr>
<tr class="separator:a2fc55eb658f35dbc23c2129d9304f21e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb29aee7950c9c6d2ed896fbb8b1e8d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#acb29aee7950c9c6d2ed896fbb8b1e8d0">BIG_384_56_dec</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int i)</td></tr>
<tr class="memdesc:acb29aee7950c9c6d2ed896fbb8b1e8d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#acb29aee7950c9c6d2ed896fbb8b1e8d0">More...</a><br /></td></tr>
<tr class="separator:acb29aee7950c9c6d2ed896fbb8b1e8d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98358a4dd86211868eeb80b7a21f8694"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a98358a4dd86211868eeb80b7a21f8694">BIG_384_56_dadd</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> z)</td></tr>
<tr class="memdesc:a98358a4dd86211868eeb80b7a21f8694"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#a98358a4dd86211868eeb80b7a21f8694">More...</a><br /></td></tr>
<tr class="separator:a98358a4dd86211868eeb80b7a21f8694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac114288aa5bbc61e6f533ca6db5d253c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ac114288aa5bbc61e6f533ca6db5d253c">BIG_384_56_dsub</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> z)</td></tr>
<tr class="memdesc:ac114288aa5bbc61e6f533ca6db5d253c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#ac114288aa5bbc61e6f533ca6db5d253c">More...</a><br /></td></tr>
<tr class="separator:ac114288aa5bbc61e6f533ca6db5d253c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ac44aa223a117f1239157b2c2d477e3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a6ac44aa223a117f1239157b2c2d477e3">BIG_384_56_imul</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int i)</td></tr>
<tr class="memdesc:a6ac44aa223a117f1239157b2c2d477e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#a6ac44aa223a117f1239157b2c2d477e3">More...</a><br /></td></tr>
<tr class="separator:a6ac44aa223a117f1239157b2c2d477e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd2e3373d75d4eabd69efdc077102b6"><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__56_8h.html#a8cd2e3373d75d4eabd69efdc077102b6">BIG_384_56_pmul</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int i)</td></tr>
<tr class="memdesc:a8cd2e3373d75d4eabd69efdc077102b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a8cd2e3373d75d4eabd69efdc077102b6">More...</a><br /></td></tr>
<tr class="separator:a8cd2e3373d75d4eabd69efdc077102b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88c643881b2dcb024ec8674fd59a4643"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a88c643881b2dcb024ec8674fd59a4643">BIG_384_56_div3</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:a88c643881b2dcb024ec8674fd59a4643"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#a88c643881b2dcb024ec8674fd59a4643">More...</a><br /></td></tr>
<tr class="separator:a88c643881b2dcb024ec8674fd59a4643"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaf368d2ac42f5ddd825da235e397c08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#aaaf368d2ac42f5ddd825da235e397c08">BIG_384_56_pxmul</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, int i)</td></tr>
<tr class="memdesc:aaaf368d2ac42f5ddd825da235e397c08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#aaaf368d2ac42f5ddd825da235e397c08">More...</a><br /></td></tr>
<tr class="separator:aaaf368d2ac42f5ddd825da235e397c08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99db6539a15cf5e277cc3079381546a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a99db6539a15cf5e277cc3079381546a1">BIG_384_56_mul</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z)</td></tr>
<tr class="memdesc:a99db6539a15cf5e277cc3079381546a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#a99db6539a15cf5e277cc3079381546a1">More...</a><br /></td></tr>
<tr class="separator:a99db6539a15cf5e277cc3079381546a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afff858b85945feea8c4304eaa0307a5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#afff858b85945feea8c4304eaa0307a5c">BIG_384_56_smul</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z)</td></tr>
<tr class="memdesc:afff858b85945feea8c4304eaa0307a5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#afff858b85945feea8c4304eaa0307a5c">More...</a><br /></td></tr>
<tr class="separator:afff858b85945feea8c4304eaa0307a5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f44795268d343dd622457846a42cb49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a8f44795268d343dd622457846a42cb49">BIG_384_56_sqr</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:a8f44795268d343dd622457846a42cb49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#a8f44795268d343dd622457846a42cb49">More...</a><br /></td></tr>
<tr class="separator:a8f44795268d343dd622457846a42cb49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a212014277605c4d603aeaf27a0453bd0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a212014277605c4d603aeaf27a0453bd0">BIG_384_56_monty</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> a, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> d)</td></tr>
<tr class="memdesc:a212014277605c4d603aeaf27a0453bd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#a212014277605c4d603aeaf27a0453bd0">More...</a><br /></td></tr>
<tr class="separator:a212014277605c4d603aeaf27a0453bd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a728958036a6adcc69b6e0953344b6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a6a728958036a6adcc69b6e0953344b6c">BIG_384_56_shl</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:a6a728958036a6adcc69b6e0953344b6c"><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="#a6a728958036a6adcc69b6e0953344b6c">More...</a><br /></td></tr>
<tr class="separator:a6a728958036a6adcc69b6e0953344b6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0348863e6f3a873d11b0d3e2f5b5b7a6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a0348863e6f3a873d11b0d3e2f5b5b7a6">BIG_384_56_fshl</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:a0348863e6f3a873d11b0d3e2f5b5b7a6"><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="#a0348863e6f3a873d11b0d3e2f5b5b7a6">More...</a><br /></td></tr>
<tr class="separator:a0348863e6f3a873d11b0d3e2f5b5b7a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add2d166ceaaa059bd8fd7b62c51b45a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#add2d166ceaaa059bd8fd7b62c51b45a7">BIG_384_56_dshl</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:add2d166ceaaa059bd8fd7b62c51b45a7"><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="#add2d166ceaaa059bd8fd7b62c51b45a7">More...</a><br /></td></tr>
<tr class="separator:add2d166ceaaa059bd8fd7b62c51b45a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1164e9e8808b1ee99a586bb360bf3dc1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a1164e9e8808b1ee99a586bb360bf3dc1">BIG_384_56_shr</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:a1164e9e8808b1ee99a586bb360bf3dc1"><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="#a1164e9e8808b1ee99a586bb360bf3dc1">More...</a><br /></td></tr>
<tr class="separator:a1164e9e8808b1ee99a586bb360bf3dc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52bba4444f17006ad65e1b0a48532ca6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a52bba4444f17006ad65e1b0a48532ca6">BIG_384_56_ssn</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> r, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> a, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> m)</td></tr>
<tr class="memdesc:a52bba4444f17006ad65e1b0a48532ca6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a52bba4444f17006ad65e1b0a48532ca6">More...</a><br /></td></tr>
<tr class="separator:a52bba4444f17006ad65e1b0a48532ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab650eeee7180e6bc956edf083890ae96"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ab650eeee7180e6bc956edf083890ae96">BIG_384_56_fshr</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:ab650eeee7180e6bc956edf083890ae96"><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="#ab650eeee7180e6bc956edf083890ae96">More...</a><br /></td></tr>
<tr class="separator:ab650eeee7180e6bc956edf083890ae96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af25337e9c2f5c5885aa1b28c84c4695b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#af25337e9c2f5c5885aa1b28c84c4695b">BIG_384_56_dshr</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, int s)</td></tr>
<tr class="memdesc:af25337e9c2f5c5885aa1b28c84c4695b"><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="#af25337e9c2f5c5885aa1b28c84c4695b">More...</a><br /></td></tr>
<tr class="separator:af25337e9c2f5c5885aa1b28c84c4695b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ce439dbee1a71a202667ca20ae5ffa1"><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__56_8h.html#a8ce439dbee1a71a202667ca20ae5ffa1">BIG_384_56_split</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> z, int s)</td></tr>
<tr class="memdesc:a8ce439dbee1a71a202667ca20ae5ffa1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#a8ce439dbee1a71a202667ca20ae5ffa1">More...</a><br /></td></tr>
<tr class="separator:a8ce439dbee1a71a202667ca20ae5ffa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7697ab07cf3b454d1e3706e16cbea0d"><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__56_8h.html#ad7697ab07cf3b454d1e3706e16cbea0d">BIG_384_56_norm</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:ad7697ab07cf3b454d1e3706e16cbea0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#ad7697ab07cf3b454d1e3706e16cbea0d">More...</a><br /></td></tr>
<tr class="separator:ad7697ab07cf3b454d1e3706e16cbea0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace1e87ade1ebce4f28cf7e6924a56cc5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ace1e87ade1ebce4f28cf7e6924a56cc5">BIG_384_56_dnorm</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:ace1e87ade1ebce4f28cf7e6924a56cc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#ace1e87ade1ebce4f28cf7e6924a56cc5">More...</a><br /></td></tr>
<tr class="separator:ace1e87ade1ebce4f28cf7e6924a56cc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce7cbc5b297710f08ec91d0c48459d9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#afce7cbc5b297710f08ec91d0c48459d9">BIG_384_56_comp</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:afce7cbc5b297710f08ec91d0c48459d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#afce7cbc5b297710f08ec91d0c48459d9">More...</a><br /></td></tr>
<tr class="separator:afce7cbc5b297710f08ec91d0c48459d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add5ae95435b4aaf29ff4009dff080e75"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#add5ae95435b4aaf29ff4009dff080e75">BIG_384_56_dcomp</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y)</td></tr>
<tr class="memdesc:add5ae95435b4aaf29ff4009dff080e75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#add5ae95435b4aaf29ff4009dff080e75">More...</a><br /></td></tr>
<tr class="separator:add5ae95435b4aaf29ff4009dff080e75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa975ee4fd00b1c3b163433911ebb232d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#aa975ee4fd00b1c3b163433911ebb232d">BIG_384_56_nbits</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:aa975ee4fd00b1c3b163433911ebb232d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#aa975ee4fd00b1c3b163433911ebb232d">More...</a><br /></td></tr>
<tr class="separator:aa975ee4fd00b1c3b163433911ebb232d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41684e324281a6f40403c8719c12db83"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a41684e324281a6f40403c8719c12db83">BIG_384_56_dnbits</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x)</td></tr>
<tr class="memdesc:a41684e324281a6f40403c8719c12db83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#a41684e324281a6f40403c8719c12db83">More...</a><br /></td></tr>
<tr class="separator:a41684e324281a6f40403c8719c12db83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20f5f28740c150878645e8b055421fe1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a20f5f28740c150878645e8b055421fe1">BIG_384_56_mod</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a20f5f28740c150878645e8b055421fe1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#a20f5f28740c150878645e8b055421fe1">More...</a><br /></td></tr>
<tr class="separator:a20f5f28740c150878645e8b055421fe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf3da0c74b8beedfcf9f7cd56b9328dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#adf3da0c74b8beedfcf9f7cd56b9328dc">BIG_384_56_sdiv</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:adf3da0c74b8beedfcf9f7cd56b9328dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#adf3da0c74b8beedfcf9f7cd56b9328dc">More...</a><br /></td></tr>
<tr class="separator:adf3da0c74b8beedfcf9f7cd56b9328dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8623960a691328a6137b09c62f8ff191"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a8623960a691328a6137b09c62f8ff191">BIG_384_56_dmod</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a8623960a691328a6137b09c62f8ff191"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a8623960a691328a6137b09c62f8ff191">More...</a><br /></td></tr>
<tr class="separator:a8623960a691328a6137b09c62f8ff191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa7c7bc03ef40e9c8e92578fb1190090"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#aaa7c7bc03ef40e9c8e92578fb1190090">BIG_384_56_ddiv</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:aaa7c7bc03ef40e9c8e92578fb1190090"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#aaa7c7bc03ef40e9c8e92578fb1190090">More...</a><br /></td></tr>
<tr class="separator:aaa7c7bc03ef40e9c8e92578fb1190090"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18cfde297623f697994a00ab1aee9325"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a18cfde297623f697994a00ab1aee9325">BIG_384_56_parity</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x)</td></tr>
<tr class="memdesc:a18cfde297623f697994a00ab1aee9325"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a18cfde297623f697994a00ab1aee9325">More...</a><br /></td></tr>
<tr class="separator:a18cfde297623f697994a00ab1aee9325"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adccaaea2fa428b6b907bba1f057f47fc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#adccaaea2fa428b6b907bba1f057f47fc">BIG_384_56_bit</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int i)</td></tr>
<tr class="memdesc:adccaaea2fa428b6b907bba1f057f47fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#adccaaea2fa428b6b907bba1f057f47fc">More...</a><br /></td></tr>
<tr class="separator:adccaaea2fa428b6b907bba1f057f47fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c43db5f1761f1ab986cc62f8a9ec89e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a2c43db5f1761f1ab986cc62f8a9ec89e">BIG_384_56_lastbits</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int n)</td></tr>
<tr class="memdesc:a2c43db5f1761f1ab986cc62f8a9ec89e"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a2c43db5f1761f1ab986cc62f8a9ec89e">More...</a><br /></td></tr>
<tr class="separator:a2c43db5f1761f1ab986cc62f8a9ec89e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac5c3aa122fe71f774d84308ae786e27"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#aac5c3aa122fe71f774d84308ae786e27">BIG_384_56_random</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:aac5c3aa122fe71f774d84308ae786e27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#aac5c3aa122fe71f774d84308ae786e27">More...</a><br /></td></tr>
<tr class="separator:aac5c3aa122fe71f774d84308ae786e27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fbe5634d4f5caf8e939de0bfd33a880"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a4fbe5634d4f5caf8e939de0bfd33a880">BIG_384_56_randomnum</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a4fbe5634d4f5caf8e939de0bfd33a880"><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="#a4fbe5634d4f5caf8e939de0bfd33a880">More...</a><br /></td></tr>
<tr class="separator:a4fbe5634d4f5caf8e939de0bfd33a880"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f4dfa3df3b0a3e1f0a295a4518f9edc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a6f4dfa3df3b0a3e1f0a295a4518f9edc">BIG_384_56_modmul</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a6f4dfa3df3b0a3e1f0a295a4518f9edc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#a6f4dfa3df3b0a3e1f0a295a4518f9edc">More...</a><br /></td></tr>
<tr class="separator:a6f4dfa3df3b0a3e1f0a295a4518f9edc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05c605371b6db50505d44a2409b0a208"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a05c605371b6db50505d44a2409b0a208">BIG_384_56_moddiv</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> z, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a05c605371b6db50505d44a2409b0a208"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#a05c605371b6db50505d44a2409b0a208">More...</a><br /></td></tr>
<tr class="separator:a05c605371b6db50505d44a2409b0a208"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2345e7bf7451a965d72bd1c9d2f66198"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a2345e7bf7451a965d72bd1c9d2f66198">BIG_384_56_modsqr</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a2345e7bf7451a965d72bd1c9d2f66198"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#a2345e7bf7451a965d72bd1c9d2f66198">More...</a><br /></td></tr>
<tr class="separator:a2345e7bf7451a965d72bd1c9d2f66198"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01afcbd9656c926d98b433b17b0929ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a01afcbd9656c926d98b433b17b0929ad">BIG_384_56_modneg</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:a01afcbd9656c926d98b433b17b0929ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#a01afcbd9656c926d98b433b17b0929ad">More...</a><br /></td></tr>
<tr class="separator:a01afcbd9656c926d98b433b17b0929ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4092febdcd66786f025cb1fa6b01c1e0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#a4092febdcd66786f025cb1fa6b01c1e0">BIG_384_56_jacobi</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y)</td></tr>
<tr class="memdesc:a4092febdcd66786f025cb1fa6b01c1e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#a4092febdcd66786f025cb1fa6b01c1e0">More...</a><br /></td></tr>
<tr class="separator:a4092febdcd66786f025cb1fa6b01c1e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac96a4421de3b5fd001192f2f0544cf7a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ac96a4421de3b5fd001192f2f0544cf7a">BIG_384_56_invmodp</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> y, <a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> n)</td></tr>
<tr class="memdesc:ac96a4421de3b5fd001192f2f0544cf7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#ac96a4421de3b5fd001192f2f0544cf7a">More...</a><br /></td></tr>
<tr class="separator:ac96a4421de3b5fd001192f2f0544cf7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab28f4d0d9184346bfaf5ae46231d6119"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#ab28f4d0d9184346bfaf5ae46231d6119">BIG_384_56_mod2m</a> (<a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</a> x, int m)</td></tr>
<tr class="memdesc:ab28f4d0d9184346bfaf5ae46231d6119"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#ab28f4d0d9184346bfaf5ae46231d6119">More...</a><br /></td></tr>
<tr class="separator:ab28f4d0d9184346bfaf5ae46231d6119"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac92ed32b643060b228968fff92f550b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__56_8h.html#aac92ed32b643060b228968fff92f550b">BIG_384_56_dmod2m</a> (<a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</a> x, int m)</td></tr>
<tr class="memdesc:aac92ed32b643060b228968fff92f550b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#aac92ed32b643060b228968fff92f550b">More...</a><br /></td></tr>
<tr class="separator:aac92ed32b643060b228968fff92f550b"><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="a6e1353243985f68f42cdf9be09b90141"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e1353243985f68f42cdf9be09b90141">&#9670;&nbsp;</a></span>BIGBITS_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_384_56&#160;&#160;&#160;(8*<a class="el" href="config__big__384__56_8h.html#ab097d53a21c3885285dbb6c6c72b608d">MODBYTES_384_56</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="a73e44860541e0d07e82f012bbb29c0da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73e44860541e0d07e82f012bbb29c0da">&#9670;&nbsp;</a></span>BMASK_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_384_56&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="af8cf9396dc122f3521a29bc4e2e5aa22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8cf9396dc122f3521a29bc4e2e5aa22">&#9670;&nbsp;</a></span>DNLEN_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_384_56&#160;&#160;&#160;2*<a class="el" href="big__384__56_8h.html#a5e1bda709894ea23a924da6c5b191748">NLEN_384_56</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="a4bb9352ea46877e21288144972438d7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bb9352ea46877e21288144972438d7b">&#9670;&nbsp;</a></span>HBITS_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_384_56&#160;&#160;&#160;(<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="af631d7e86602f736b0dcf8de4eb40498"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af631d7e86602f736b0dcf8de4eb40498">&#9670;&nbsp;</a></span>HMASK_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_384_56&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__56_8h.html#a4bb9352ea46877e21288144972438d7b">HBITS_384_56</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="a5a6ef8568e207c971f9c23b06673b778"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a6ef8568e207c971f9c23b06673b778">&#9670;&nbsp;</a></span>NEXCESS_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_384_56&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</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="a5e1bda709894ea23a924da6c5b191748"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e1bda709894ea23a924da6c5b191748">&#9670;&nbsp;</a></span>NLEN_384_56</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_384_56&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__56_8h.html#ab097d53a21c3885285dbb6c6c72b608d">MODBYTES_384_56</a>-1)/<a class="el" href="config__big__384__56_8h.html#a17291ec476cbf2794ab8552edb4e7cd1">BASEBITS_384_56</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a84b175c07377e6d2a06d66603d2e719c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84b175c07377e6d2a06d66603d2e719c">&#9670;&nbsp;</a></span>BIG_384_56</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_56[<a class="el" href="big__384__56_8h.html#a5e1bda709894ea23a924da6c5b191748">NLEN_384_56</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="a6c518f0c183c5deeb8cf6f8245d0d40c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c518f0c183c5deeb8cf6f8245d0d40c">&#9670;&nbsp;</a></span>DBIG_384_56</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_56[<a class="el" href="big__384__56_8h.html#af8cf9396dc122f3521a29bc4e2e5aa22">DNLEN_384_56</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="afe5a8c4ad2eea34b6dc4716646f77e18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe5a8c4ad2eea34b6dc4716646f77e18">&#9670;&nbsp;</a></span>BIG_384_56_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="adccaaea2fa428b6b907bba1f057f47fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adccaaea2fa428b6b907bba1f057f47fc">&#9670;&nbsp;</a></span>BIG_384_56_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ad9b8213b5add9582a664fcd58ff80ef2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9b8213b5add9582a664fcd58ff80ef2">&#9670;&nbsp;</a></span>BIG_384_56_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="afce7cbc5b297710f08ec91d0c48459d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afce7cbc5b297710f08ec91d0c48459d9">&#9670;&nbsp;</a></span>BIG_384_56_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a99265daad1062824f89c9f163e40b33e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99265daad1062824f89c9f163e40b33e">&#9670;&nbsp;</a></span>BIG_384_56_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="abd8bddc35d4bda42867f0e9a4eb07874"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd8bddc35d4bda42867f0e9a4eb07874">&#9670;&nbsp;</a></span>BIG_384_56_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a98358a4dd86211868eeb80b7a21f8694"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98358a4dd86211868eeb80b7a21f8694">&#9670;&nbsp;</a></span>BIG_384_56_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a22a6d481288f98dfb1c985aaf4c34a12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22a6d481288f98dfb1c985aaf4c34a12">&#9670;&nbsp;</a></span>BIG_384_56_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="add5ae95435b4aaf29ff4009dff080e75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add5ae95435b4aaf29ff4009dff080e75">&#9670;&nbsp;</a></span>BIG_384_56_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a41e18ce29fb09e100b00dcffb8304b6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41e18ce29fb09e100b00dcffb8304b6a">&#9670;&nbsp;</a></span>BIG_384_56_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="aaa7c7bc03ef40e9c8e92578fb1190090"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa7c7bc03ef40e9c8e92578fb1190090">&#9670;&nbsp;</a></span>BIG_384_56_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="acb29aee7950c9c6d2ed896fbb8b1e8d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb29aee7950c9c6d2ed896fbb8b1e8d0">&#9670;&nbsp;</a></span>BIG_384_56_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ad8a23de43097c9bf56cb0dbdd0a3380b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad8a23de43097c9bf56cb0dbdd0a3380b">&#9670;&nbsp;</a></span>BIG_384_56_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a4c4e0e30b5871b09f9dc6feba9465fd3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c4e0e30b5871b09f9dc6feba9465fd3">&#9670;&nbsp;</a></span>BIG_384_56_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a88c643881b2dcb024ec8674fd59a4643"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88c643881b2dcb024ec8674fd59a4643">&#9670;&nbsp;</a></span>BIG_384_56_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a8623960a691328a6137b09c62f8ff191"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8623960a691328a6137b09c62f8ff191">&#9670;&nbsp;</a></span>BIG_384_56_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="aac92ed32b643060b228968fff92f550b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac92ed32b643060b228968fff92f550b">&#9670;&nbsp;</a></span>BIG_384_56_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a41684e324281a6f40403c8719c12db83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41684e324281a6f40403c8719c12db83">&#9670;&nbsp;</a></span>BIG_384_56_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="ace1e87ade1ebce4f28cf7e6924a56cc5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace1e87ade1ebce4f28cf7e6924a56cc5">&#9670;&nbsp;</a></span>BIG_384_56_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a55fc7488d3c7d8530495e9c077a473a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55fc7488d3c7d8530495e9c077a473a9">&#9670;&nbsp;</a></span>BIG_384_56_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a6d94dd0fad95639cfa1b221ecbf9d282"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d94dd0fad95639cfa1b221ecbf9d282">&#9670;&nbsp;</a></span>BIG_384_56_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a7c1897e5941d8b5a6f12665f240a76b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c1897e5941d8b5a6f12665f240a76b6">&#9670;&nbsp;</a></span>BIG_384_56_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="add2d166ceaaa059bd8fd7b62c51b45a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add2d166ceaaa059bd8fd7b62c51b45a7">&#9670;&nbsp;</a></span>BIG_384_56_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="af25337e9c2f5c5885aa1b28c84c4695b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af25337e9c2f5c5885aa1b28c84c4695b">&#9670;&nbsp;</a></span>BIG_384_56_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="ac114288aa5bbc61e6f533ca6db5d253c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac114288aa5bbc61e6f533ca6db5d253c">&#9670;&nbsp;</a></span>BIG_384_56_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="af97d5f512b479452b76c8c395cc526da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af97d5f512b479452b76c8c395cc526da">&#9670;&nbsp;</a></span>BIG_384_56_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a7a29993b9800bc5fed165682d13fa5da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a29993b9800bc5fed165682d13fa5da">&#9670;&nbsp;</a></span>BIG_384_56_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a8b3ba939ef56607de9561c736bb45b06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b3ba939ef56607de9561c736bb45b06">&#9670;&nbsp;</a></span>BIG_384_56_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ad2fffed8ee3c80a87427a7816dccd458"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2fffed8ee3c80a87427a7816dccd458">&#9670;&nbsp;</a></span>BIG_384_56_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a0348863e6f3a873d11b0d3e2f5b5b7a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0348863e6f3a873d11b0d3e2f5b5b7a6">&#9670;&nbsp;</a></span>BIG_384_56_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ab650eeee7180e6bc956edf083890ae96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab650eeee7180e6bc956edf083890ae96">&#9670;&nbsp;</a></span>BIG_384_56_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a6ac44aa223a117f1239157b2c2d477e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ac44aa223a117f1239157b2c2d477e3">&#9670;&nbsp;</a></span>BIG_384_56_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ac341a05be2a42320d3144cecb595166f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac341a05be2a42320d3144cecb595166f">&#9670;&nbsp;</a></span>BIG_384_56_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="abba3c5d97b761e44d268d6307f7ba3e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abba3c5d97b761e44d268d6307f7ba3e2">&#9670;&nbsp;</a></span>BIG_384_56_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ac96a4421de3b5fd001192f2f0544cf7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac96a4421de3b5fd001192f2f0544cf7a">&#9670;&nbsp;</a></span>BIG_384_56_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a904972dd817ed39992151c2d9c40e530"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a904972dd817ed39992151c2d9c40e530">&#9670;&nbsp;</a></span>BIG_384_56_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a501d069a9b78be0c8ad093314e1f7bb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a501d069a9b78be0c8ad093314e1f7bb3">&#9670;&nbsp;</a></span>BIG_384_56_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a4092febdcd66786f025cb1fa6b01c1e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4092febdcd66786f025cb1fa6b01c1e0">&#9670;&nbsp;</a></span>BIG_384_56_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a2c43db5f1761f1ab986cc62f8a9ec89e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c43db5f1761f1ab986cc62f8a9ec89e">&#9670;&nbsp;</a></span>BIG_384_56_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a20f5f28740c150878645e8b055421fe1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20f5f28740c150878645e8b055421fe1">&#9670;&nbsp;</a></span>BIG_384_56_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ab28f4d0d9184346bfaf5ae46231d6119"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab28f4d0d9184346bfaf5ae46231d6119">&#9670;&nbsp;</a></span>BIG_384_56_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a05c605371b6db50505d44a2409b0a208"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05c605371b6db50505d44a2409b0a208">&#9670;&nbsp;</a></span>BIG_384_56_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a6f4dfa3df3b0a3e1f0a295a4518f9edc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f4dfa3df3b0a3e1f0a295a4518f9edc">&#9670;&nbsp;</a></span>BIG_384_56_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a01afcbd9656c926d98b433b17b0929ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01afcbd9656c926d98b433b17b0929ad">&#9670;&nbsp;</a></span>BIG_384_56_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a2345e7bf7451a965d72bd1c9d2f66198"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2345e7bf7451a965d72bd1c9d2f66198">&#9670;&nbsp;</a></span>BIG_384_56_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a212014277605c4d603aeaf27a0453bd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a212014277605c4d603aeaf27a0453bd0">&#9670;&nbsp;</a></span>BIG_384_56_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a99db6539a15cf5e277cc3079381546a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99db6539a15cf5e277cc3079381546a1">&#9670;&nbsp;</a></span>BIG_384_56_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="aa975ee4fd00b1c3b163433911ebb232d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa975ee4fd00b1c3b163433911ebb232d">&#9670;&nbsp;</a></span>BIG_384_56_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ad7697ab07cf3b454d1e3706e16cbea0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7697ab07cf3b454d1e3706e16cbea0d">&#9670;&nbsp;</a></span>BIG_384_56_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_56_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="af2195a8253e0c58b8bb147deb707dcd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2195a8253e0c58b8bb147deb707dcd2">&#9670;&nbsp;</a></span>BIG_384_56_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="acfcc567d1954ac2f544c267e48e711fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acfcc567d1954ac2f544c267e48e711fd">&#9670;&nbsp;</a></span>BIG_384_56_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ad9694ea00361b6487cabde26235ae0ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9694ea00361b6487cabde26235ae0ae">&#9670;&nbsp;</a></span>BIG_384_56_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a18cfde297623f697994a00ab1aee9325"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18cfde297623f697994a00ab1aee9325">&#9670;&nbsp;</a></span>BIG_384_56_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a8cd2e3373d75d4eabd69efdc077102b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cd2e3373d75d4eabd69efdc077102b6">&#9670;&nbsp;</a></span>BIG_384_56_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_56_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="aaaf368d2ac42f5ddd825da235e397c08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaaf368d2ac42f5ddd825da235e397c08">&#9670;&nbsp;</a></span>BIG_384_56_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="aac5c3aa122fe71f774d84308ae786e27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac5c3aa122fe71f774d84308ae786e27">&#9670;&nbsp;</a></span>BIG_384_56_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a4fbe5634d4f5caf8e939de0bfd33a880"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fbe5634d4f5caf8e939de0bfd33a880">&#9670;&nbsp;</a></span>BIG_384_56_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="afa1909f6c026350b5231eb12c6b14565"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa1909f6c026350b5231eb12c6b14565">&#9670;&nbsp;</a></span>BIG_384_56_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ab90026aff678dcc7ab1d1c2d7167f296"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab90026aff678dcc7ab1d1c2d7167f296">&#9670;&nbsp;</a></span>BIG_384_56_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a407e94ca63a7bff4efacf40e3e42662d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a407e94ca63a7bff4efacf40e3e42662d">&#9670;&nbsp;</a></span>BIG_384_56_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="adf3da0c74b8beedfcf9f7cd56b9328dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf3da0c74b8beedfcf9f7cd56b9328dc">&#9670;&nbsp;</a></span>BIG_384_56_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a83dc4374d0ff05900d9c1f37abf2ca0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83dc4374d0ff05900d9c1f37abf2ca0e">&#9670;&nbsp;</a></span>BIG_384_56_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a6a728958036a6adcc69b6e0953344b6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a728958036a6adcc69b6e0953344b6c">&#9670;&nbsp;</a></span>BIG_384_56_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a1164e9e8808b1ee99a586bb360bf3dc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1164e9e8808b1ee99a586bb360bf3dc1">&#9670;&nbsp;</a></span>BIG_384_56_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="afff858b85945feea8c4304eaa0307a5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afff858b85945feea8c4304eaa0307a5c">&#9670;&nbsp;</a></span>BIG_384_56_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a8ce439dbee1a71a202667ca20ae5ffa1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ce439dbee1a71a202667ca20ae5ffa1">&#9670;&nbsp;</a></span>BIG_384_56_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_56_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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="a8f44795268d343dd622457846a42cb49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f44795268d343dd622457846a42cb49">&#9670;&nbsp;</a></span>BIG_384_56_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a6c518f0c183c5deeb8cf6f8245d0d40c">DBIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a52bba4444f17006ad65e1b0a48532ca6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52bba4444f17006ad65e1b0a48532ca6">&#9670;&nbsp;</a></span>BIG_384_56_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_56_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="a2fc55eb658f35dbc23c2129d9304f21e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2fc55eb658f35dbc23c2129d9304f21e">&#9670;&nbsp;</a></span>BIG_384_56_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ab7cdb8bcf992f08fd7a089ef7ef67f06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7cdb8bcf992f08fd7a089ef7ef67f06">&#9670;&nbsp;</a></span>BIG_384_56_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_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__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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="ac2cc31c4eee2db7c34437af01cb0b09b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2cc31c4eee2db7c34437af01cb0b09b">&#9670;&nbsp;</a></span>BIG_384_56_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_56_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__56_8h.html#a84b175c07377e6d2a06d66603d2e719c">BIG_384_56</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.13
</small></address>
</body>
</html>