Lastest doxygen docs updated

travis build: 30
	commit: f76429b24b
	auto-pushed to gh-pages
This commit is contained in:
travis-ci 2014-06-09 00:26:41 +00:00
parent b333b7d765
commit 7ab70a5d04
210 changed files with 285 additions and 13780 deletions

View File

@ -71,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -95,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -71,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/decrypt.h File Reference</title>
<title>post quantum cryptography: decrypt.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>
@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,10 +78,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
@ -99,9 +95,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><div class="textblock"><div class="dynheader">
Include dependency graph for decrypt.h:</div>
<div class="dyncontent">
<div class="center"><img src="decrypt_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2include_2decrypt_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2include_2decrypt_8h" id="_2home_2travis_2build_2hasufell_2pqc_2include_2decrypt_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="128,117,181,147"/></map>
<div class="center"><img src="decrypt_8h__incl.png" border="0" usemap="#decrypt_8h" alt=""/></div>
<map name="decrypt_8h" id="decrypt_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="128,83,181,112"/></map>
</div>
</div>
<p><a href="decrypt_8h_source.html">Go to the source code of this file.</a></p>
@ -156,33 +152,20 @@ Functions</h2></td></tr>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>the encrypted message in the form of a string </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynomial containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the decrypted string or NULL on failure</dd></dl>
<p>Decryption of a given encrypted string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>the encrypted message in the form of a string </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the decrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__decrypt_8c_source.html#l00092">92</a> of file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>the decrypted string or NULL on failure </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,3 +1,3 @@
<map id="/home/travis/build/hasufell/pqc/include/decrypt.h" name="/home/travis/build/hasufell/pqc/include/decrypt.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="128,117,181,147"/>
<map id="decrypt.h" name="decrypt.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="128,83,181,112"/>
</map>

View File

@ -1 +1 @@
fb24b66731f4f649376520135129d066
72dd9c38e8928e631b0cdf7d289bf155

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/decrypt.h Source File</title>
<title>post quantum cryptography: decrypt.h Source File</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>
@ -64,12 +64,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,11 +79,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">decrypt.h</div> </div>
@ -129,12 +125,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* PUBLIC_NTRU_DECRYPT_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru_8h_html"><div class="ttname"><a href="ntru_8h.html">ntru.h</a></div><div class="ttdoc">public API, basic data types </div></div>
<div class="ttc" id="decrypt_8h_html_aa9cc61eec0c119e48762f6078a14527b"><div class="ttname"><a href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a></div><div class="ttdeci">string * ntru_decrypt_string(const string *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__decrypt_8c_source.html#l00092">ntru_decrypt.c:92</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="decrypt_8h_html_aa9cc61eec0c119e48762f6078a14527b"><div class="ttname"><a href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a></div><div class="ttdeci">string * ntru_decrypt_string(const string *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const ntru_params *params)</div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00047">ntru.h:47</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,173 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src Directory 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">src Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Directory dependency graph for src:</div>
<div class="dyncontent">
<div class="center"><img src="dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png" border="0" usemap="#dir__68267d1309a1af8e8297ef4c3efbcdba__dep" alt="/home/travis/build/hasufell/pqc/src"/></div>
<map name="dir__68267d1309a1af8e8297ef4c3efbcdba__dep" id="dir__68267d1309a1af8e8297ef4c3efbcdba__dep">
<area shape="rect" id="node1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="5,5,77,53"/></map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:ntru__ascii__poly_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8c.html">ntru_ascii_poly.c</a> <a href="ntru__ascii__poly_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__ascii__poly_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">ascii to polynomials <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__ascii__poly_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a> <a href="ntru__ascii__poly_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__ascii__poly_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__ascii__poly_8c.html" title="ascii to polynomials ">ntru_ascii_poly.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__common_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__common_8h.html">ntru_common.h</a> <a href="ntru__common_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__common_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">common macros/functions <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__decrypt_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8c.html">ntru_decrypt.c</a> <a href="ntru__decrypt_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__decrypt_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">NTRU decryption. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__decrypt_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8h.html">ntru_decrypt.h</a> <a href="ntru__decrypt_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__decrypt_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__encrypt_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8c.html">ntru_encrypt.c</a> <a href="ntru__encrypt_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__encrypt_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">NTRU encryption. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__encrypt_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8h.html">ntru_encrypt.h</a> <a href="ntru__encrypt_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__encrypt_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for encrypt.c <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__err_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__err_8h.html">ntru_err.h</a> <a href="ntru__err_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__err_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">error handling <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__file_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8c.html">ntru_file.c</a> <a href="ntru__file_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__file_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">file operations <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__file_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8h.html">ntru_file.h</a> <a href="ntru__file_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__file_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__file_8c.html" title="file operations ">ntru_file.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__keypair_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html">ntru_keypair.c</a> <a href="ntru__keypair_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__keypair_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">key creation and operations <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__keypair_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html">ntru_keypair.h</a> <a href="ntru__keypair_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__keypair_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__mem_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__mem_8c.html">ntru_mem.c</a> <a href="ntru__mem_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__mem_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">memory management <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__mem_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__mem_8h.html">ntru_mem.h</a> <a href="ntru__mem_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__mem_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__mem_8c.html" title="memory management ">ntru_mem.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__params_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__params_8h.html">ntru_params.h</a> <a href="ntru__params_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__params_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">NTRU parameters. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__poly_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__poly_8c.html">ntru_poly.c</a> <a href="ntru__poly_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__poly_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">operations on polynomials <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__poly_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__poly_8h.html">ntru_poly.h</a> <a href="ntru__poly_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__poly_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__poly_8c.html" title="operations on polynomials ">ntru_poly.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__poly__ascii_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__poly__ascii_8c.html">ntru_poly_ascii.c</a> <a href="ntru__poly__ascii_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__poly__ascii_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">polynomials to acii <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__poly__ascii_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a> <a href="ntru__poly__ascii_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__poly__ascii_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__poly__ascii_8c.html" title="polynomials to acii ">ntru_poly_ascii.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__rnd_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__rnd_8c.html">ntru_rnd.c</a> <a href="ntru__rnd_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__rnd_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">random polynomials <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__rnd_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__rnd_8h.html">ntru_rnd.h</a> <a href="ntru__rnd_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__rnd_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__rnd_8c.html" title="random polynomials ">ntru_rnd.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__string_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__string_8c.html">ntru_string.c</a> <a href="ntru__string_8c_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__string_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">string type and operations <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru__string_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__string_8h.html">ntru_string.h</a> <a href="ntru__string_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru__string_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">header for <a class="el" href="ntru__string_8c.html" title="string type and operations ">ntru_string.c</a> <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,3 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src" name="/home/travis/build/hasufell/pqc/src">
<area shape="rect" id="node1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="5,5,77,53"/>
</map>

View File

@ -1 +0,0 @@
ecc0aab54f5ba6a2126063459d871bbe

Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 B

View File

@ -1,119 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include Directory 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">include Directory Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Directory dependency graph for include:</div>
<div class="dyncontent">
<div class="center"><img src="dir_d44c64559bbebec7f509842c48db8b23_dep.png" border="0" usemap="#dir__d44c64559bbebec7f509842c48db8b23__dep" alt="/home/travis/build/hasufell/pqc/include"/></div>
<map name="dir__d44c64559bbebec7f509842c48db8b23__dep" id="dir__d44c64559bbebec7f509842c48db8b23__dep">
<area shape="rect" id="node1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="5,5,77,53"/></map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:decrypt_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="decrypt_8h.html">decrypt.h</a> <a href="decrypt_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:decrypt_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">public API, decryption <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:encrypt_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="encrypt_8h.html">encrypt.h</a> <a href="encrypt_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:encrypt_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">public API, encryption <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:keypair_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="keypair_8h.html">keypair.h</a> <a href="keypair_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:keypair_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">public API, key handling <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ntru_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru_8h.html">ntru.h</a> <a href="ntru_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:ntru_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">public API, basic data types <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:rnd_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rnd_8h.html">rnd.h</a> <a href="rnd_8h_source.html">[code]</a></td></tr>
<tr class="memdesc:rnd_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">public API, random polynomials <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,3 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/include" name="/home/travis/build/hasufell/pqc/include">
<area shape="rect" id="node1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="5,5,77,53"/>
</map>

View File

@ -1 +0,0 @@
0949ded2bc36ea9f7de2d964cd6cf98d

Binary file not shown.

Before

Width:  |  Height:  |  Size: 872 B

View File

@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/encrypt.h File Reference</title>
<title>post quantum cryptography: encrypt.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>
@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,10 +78,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
@ -99,9 +95,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><div class="textblock"><div class="dynheader">
Include dependency graph for encrypt.h:</div>
<div class="dyncontent">
<div class="center"><img src="encrypt_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2include_2encrypt_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2include_2encrypt_8h" id="_2home_2travis_2build_2hasufell_2pqc_2include_2encrypt_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="128,117,181,147"/></map>
<div class="center"><img src="encrypt_8h__incl.png" border="0" usemap="#encrypt_8h" alt=""/></div>
<map name="encrypt_8h" id="encrypt_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="128,83,181,112"/></map>
</div>
</div>
<p><a href="encrypt_8h_source.html">Go to the source code of this file.</a></p>
@ -162,27 +158,14 @@ Functions</h2></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the newly allocated encrypted string, NULL on failure</dd></dl>
<p>Encrypt a message in the form of a null-terminated char array and return a string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">msg</td><td>the message </td></tr>
<tr><td class="paramname">pub_key</td><td>the public key </td></tr>
<tr><td class="paramname">rnd</td><td>the random poly (should have relatively small coefficients, but not restricted to {-1, 0, 1}) </td></tr>
<tr><td class="paramname">params</td><td><a class="el" href="structntru__params.html">ntru_params</a> the ntru context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the newly allocated encrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__encrypt_8c_source.html#l00074">74</a> of file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>the newly allocated encrypted string, NULL on failure </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,3 +1,3 @@
<map id="/home/travis/build/hasufell/pqc/include/encrypt.h" name="/home/travis/build/hasufell/pqc/include/encrypt.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="128,117,181,147"/>
<map id="encrypt.h" name="encrypt.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="128,83,181,112"/>
</map>

View File

@ -1 +1 @@
6aad9be46b94806b9b3f39bcf0b88dd9
d865c2c2cae936ced9a44350d42213b0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/encrypt.h Source File</title>
<title>post quantum cryptography: encrypt.h Source File</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>
@ -64,12 +64,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,11 +79,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">encrypt.h</div> </div>
@ -128,13 +124,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* PUBLIC_NTRU_ENCRYPT_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="encrypt_8h_html_a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><div class="ttname"><a href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a></div><div class="ttdeci">string * ntru_encrypt_string(const string *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__encrypt_8c_source.html#l00074">ntru_encrypt.c:74</a></div></div>
<div class="ttc" id="encrypt_8h_html_a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><div class="ttname"><a href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a></div><div class="ttdeci">string * ntru_encrypt_string(const string *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const ntru_params *params)</div></div>
<div class="ttc" id="ntru_8h_html"><div class="ttname"><a href="ntru_8h.html">ntru.h</a></div><div class="ttdoc">public API, basic data types </div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00047">ntru.h:47</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -70,7 +70,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -85,43 +85,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')">&#160;</span><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="decrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="decrypt_8h.html" target="_self">decrypt.h</a></td><td class="desc">Public API, decryption </td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="encrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="encrypt_8h.html" target="_self">encrypt.h</a></td><td class="desc">Public API, encryption </td></tr>
<tr id="row_0_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="keypair_8h_source.html"><span class="icondoc"></span></a><a class="el" href="keypair_8h.html" target="_self">keypair.h</a></td><td class="desc">Public API, key handling </td></tr>
<tr id="row_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru_8h.html" target="_self">ntru.h</a></td><td class="desc">Public API, basic data types </td></tr>
<tr id="row_0_4_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="rnd_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rnd_8h.html" target="_self">rnd.h</a></td><td class="desc">Public API, random polynomials </td></tr>
<tr id="row_1_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span id="img_1_" class="iconfopen" onclick="toggleFolder('1_')">&#160;</span><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
<tr id="row_1_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__ascii__poly_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__ascii__poly_8c.html" target="_self">ntru_ascii_poly.c</a></td><td class="desc">Ascii to polynomials </td></tr>
<tr id="row_1_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__ascii__poly_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__ascii__poly_8h.html" target="_self">ntru_ascii_poly.h</a></td><td class="desc">Header for <a class="el" href="ntru__ascii__poly_8c.html" title="ascii to polynomials ">ntru_ascii_poly.c</a> </td></tr>
<tr id="row_1_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__common_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__common_8h.html" target="_self">ntru_common.h</a></td><td class="desc">Common macros/functions </td></tr>
<tr id="row_1_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__decrypt_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__decrypt_8c.html" target="_self">ntru_decrypt.c</a></td><td class="desc">NTRU decryption </td></tr>
<tr id="row_1_4_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__decrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__decrypt_8h.html" target="_self">ntru_decrypt.h</a></td><td class="desc">Header for <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a> </td></tr>
<tr id="row_1_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__encrypt_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__encrypt_8c.html" target="_self">ntru_encrypt.c</a></td><td class="desc">NTRU encryption </td></tr>
<tr id="row_1_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__encrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__encrypt_8h.html" target="_self">ntru_encrypt.h</a></td><td class="desc">Header for encrypt.c </td></tr>
<tr id="row_1_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__err_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__err_8h.html" target="_self">ntru_err.h</a></td><td class="desc">Error handling </td></tr>
<tr id="row_1_8_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__file_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__file_8c.html" target="_self">ntru_file.c</a></td><td class="desc">File operations </td></tr>
<tr id="row_1_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__file_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__file_8h.html" target="_self">ntru_file.h</a></td><td class="desc">Header for <a class="el" href="ntru__file_8c.html" title="file operations ">ntru_file.c</a> </td></tr>
<tr id="row_1_10_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__keypair_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__keypair_8c.html" target="_self">ntru_keypair.c</a></td><td class="desc">Key creation and operations </td></tr>
<tr id="row_1_11_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__keypair_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__keypair_8h.html" target="_self">ntru_keypair.h</a></td><td class="desc">Header for <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a> </td></tr>
<tr id="row_1_12_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__mem_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__mem_8c.html" target="_self">ntru_mem.c</a></td><td class="desc">Memory management </td></tr>
<tr id="row_1_13_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__mem_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__mem_8h.html" target="_self">ntru_mem.h</a></td><td class="desc">Header for <a class="el" href="ntru__mem_8c.html" title="memory management ">ntru_mem.c</a> </td></tr>
<tr id="row_1_14_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__params_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__params_8h.html" target="_self">ntru_params.h</a></td><td class="desc">NTRU parameters </td></tr>
<tr id="row_1_15_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__poly_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__poly_8c.html" target="_self">ntru_poly.c</a></td><td class="desc">Operations on polynomials </td></tr>
<tr id="row_1_16_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__poly_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__poly_8h.html" target="_self">ntru_poly.h</a></td><td class="desc">Header for <a class="el" href="ntru__poly_8c.html" title="operations on polynomials ">ntru_poly.c</a> </td></tr>
<tr id="row_1_17_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__poly__ascii_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__poly__ascii_8c.html" target="_self">ntru_poly_ascii.c</a></td><td class="desc">Polynomials to acii </td></tr>
<tr id="row_1_18_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__poly__ascii_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__poly__ascii_8h.html" target="_self">ntru_poly_ascii.h</a></td><td class="desc">Header for <a class="el" href="ntru__poly__ascii_8c.html" title="polynomials to acii ">ntru_poly_ascii.c</a> </td></tr>
<tr id="row_1_19_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__rnd_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__rnd_8c.html" target="_self">ntru_rnd.c</a></td><td class="desc">Random polynomials </td></tr>
<tr id="row_1_20_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__rnd_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__rnd_8h.html" target="_self">ntru_rnd.h</a></td><td class="desc">Header for <a class="el" href="ntru__rnd_8c.html" title="random polynomials ">ntru_rnd.c</a> </td></tr>
<tr id="row_1_21_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__string_8c_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__string_8c.html" target="_self">ntru_string.c</a></td><td class="desc">String type and operations </td></tr>
<tr id="row_1_22_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="ntru__string_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru__string_8h.html" target="_self">ntru_string.h</a></td><td class="desc">Header for <a class="el" href="ntru__string_8c.html" title="string type and operations ">ntru_string.c</a> </td></tr>
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="decrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="decrypt_8h.html" target="_self">decrypt.h</a></td><td class="desc">Public API, decryption </td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="encrypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="encrypt_8h.html" target="_self">encrypt.h</a></td><td class="desc">Public API, encryption </td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="keypair_8h_source.html"><span class="icondoc"></span></a><a class="el" href="keypair_8h.html" target="_self">keypair.h</a></td><td class="desc">Public API, key handling </td></tr>
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ntru_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ntru_8h.html" target="_self">ntru.h</a></td><td class="desc">Public API, basic data types </td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rnd_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rnd_8h.html" target="_self">rnd.h</a></td><td class="desc">Public API, random polynomials </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -77,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
: <a class="el" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair</a>
</li>
<li>ptr
: <a class="el" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">string</a>
: <a class="el" href="structstring.html#aa1b2f3a2ddd1ed38245b8d4590aadf93">string</a>
</li>
<li>pub
: <a class="el" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair</a>
@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -77,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
: <a class="el" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair</a>
</li>
<li>ptr
: <a class="el" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">string</a>
: <a class="el" href="structstring.html#aa1b2f3a2ddd1ed38245b8d4590aadf93">string</a>
</li>
<li>pub
: <a class="el" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair</a>
@ -116,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -69,24 +69,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li class="current"><a href="globals.html"><span>All</span></a></li>
<li><a href="globals_func.html"><span>Functions</span></a></li>
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
<li><a href="globals_defs.html"><span>Macros</span></a></li>
</ul>
</div>
<div id="navrow4" class="tabs3">
<ul class="tablist">
<li><a href="#index_a"><span>a</span></a></li>
<li><a href="#index_b"><span>b</span></a></li>
<li><a href="#index_c"><span>c</span></a></li>
<li><a href="#index_e"><span>e</span></a></li>
<li><a href="#index_f"><span>f</span></a></li>
<li><a href="#index_g"><span>g</span></a></li>
<li><a href="#index_i"><span>i</span></a></li>
<li><a href="#index_k"><span>k</span></a></li>
<li><a href="#index_n"><span>n</span></a></li>
<li><a href="#index_p"><span>p</span></a></li>
<li><a href="#index_r"><span>r</span></a></li>
<li><a href="#index_s"><span>s</span></a></li>
<li class="current"><a href="#index_w"><span>w</span></a></li>
</ul>
</div>
</div><!-- top -->
@ -95,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -105,300 +87,84 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div>
<div class="contents">
<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
<li>ascii_bin_to_bin_poly()
: <a class="el" href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ntru_ascii_poly.h</a>
</li>
<li>ASCII_BITS
: <a class="el" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ntru_common.h</a>
</li>
<li>ascii_to_bin_poly_arr()
: <a class="el" href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805">ntru_ascii_poly.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
<li>base64_to_poly_arr()
: <a class="el" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d">ntru_ascii_poly.h</a>
</li>
<li>bin_poly_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8h.html#ab9464c96c3ebec6ee716c604fdc4ad21">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">ntru_poly_ascii.c</a>
</li>
<li>bin_poly_to_ascii()
: <a class="el" href="ntru__poly__ascii_8h.html#a0d86ab2dede39b332d4149e16b2046b8">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#a0d86ab2dede39b332d4149e16b2046b8">ntru_poly_ascii.c</a>
</li>
</ul>
<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
<li>CHAR_SIZE
: <a class="el" href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec">ntru_common.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div><ul>
<li>export_priv_key()
: <a class="el" href="ntru__keypair_8c.html#afa29f14a14486d3f6b979ee900d7e738">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">keypair.h</a>
: <a class="el" href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">keypair.h</a>
</li>
<li>export_public_key()
: <a class="el" href="ntru__keypair_8c.html#a41741ed660cb806c47335f66055e1bdd">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">keypair.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
<li>fmpz_add_n()
: <a class="el" href="ntru__poly_8c.html#ad2a11e832808ef1cfee0eed1cc02f4b9">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ad2a11e832808ef1cfee0eed1cc02f4b9">ntru_poly.h</a>
</li>
<li>fmpz_cmp_si_n()
: <a class="el" href="ntru__poly_8h.html#aaaac83ec72414aa208832442657c3520">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#aaaac83ec72414aa208832442657c3520">ntru_poly.c</a>
</li>
<li>fmpz_invmod_ui()
: <a class="el" href="ntru__poly_8c.html#a59da1b7962829af8f18d58c05f588606">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a59da1b7962829af8f18d58c05f588606">ntru_poly.h</a>
</li>
<li>fmpz_poly_mod()
: <a class="el" href="ntru__poly_8h.html#a7c4f5e96355518dc97a23da8f34b661a">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">ntru_poly.c</a>
</li>
<li>fmpz_poly_mod_unsigned()
: <a class="el" href="ntru__poly_8h.html#ae7d0d8364dba689df3fb4904610634cc">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">ntru_poly.c</a>
</li>
<li>fmpz_poly_set_coeff_fmpz_n()
: <a class="el" href="ntru__poly_8c.html#ab1f966fe680d1ce7c19c8c812d1932a7">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ab1f966fe680d1ce7c19c8c812d1932a7">ntru_poly.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
<li>get_bin_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#afd3f036287b4f62846c1a236426d73e1">ntru_poly_ascii.c</a>
</li>
<li>get_int_to_bin_str()
: <a class="el" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">ntru_ascii_poly.c</a>
: <a class="el" href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">keypair.h</a>
</li>
<li>get_rnd_int()
: <a class="el" href="ntru__rnd_8h.html#ad85ebfb1cb4b4942942213b750812cf0">ntru_rnd.h</a>
, <a class="el" href="rnd_8h.html#ad85ebfb1cb4b4942942213b750812cf0">rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#ad85ebfb1cb4b4942942213b750812cf0">ntru_rnd.c</a>
: <a class="el" href="rnd_8h.html#ad85ebfb1cb4b4942942213b750812cf0">rnd.h</a>
</li>
<li>get_urnd_int()
: <a class="el" href="rnd_8h.html#a99e4820cab7157eb1e16109e21dac81f">rnd.h</a>
, <a class="el" href="ntru__rnd_8h.html#a99e4820cab7157eb1e16109e21dac81f">ntru_rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#a99e4820cab7157eb1e16109e21dac81f">ntru_rnd.c</a>
</li>
</ul>
<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
<li>import_priv_key()
: <a class="el" href="ntru__keypair_8c.html#a1f917ea6ef5302826c888e5c88e0869e">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">keypair.h</a>
: <a class="el" href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">keypair.h</a>
</li>
<li>import_public_key()
: <a class="el" href="ntru__keypair_8c.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">keypair.h</a>
: <a class="el" href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">keypair.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
<li>keypair
: <a class="el" href="ntru__keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">keypair.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
<li>NTRU_ABORT
: <a class="el" href="ntru__err_8h.html#ab0f71521e9bc99beab8ece52bb00341a">ntru_err.h</a>
</li>
<li>NTRU_ABORT_DEBUG
: <a class="el" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">ntru_err.h</a>
</li>
<li>ntru_calloc()
: <a class="el" href="ntru__mem_8h.html#a37e0be4fd8d0b677a41c8287ef47885c">ntru_mem.h</a>
, <a class="el" href="ntru__mem_8c.html#a37e0be4fd8d0b677a41c8287ef47885c">ntru_mem.c</a>
: <a class="el" href="keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">keypair.h</a>
</li>
<li>ntru_create_keypair()
: <a class="el" href="ntru__keypair_8c.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">keypair.h</a>
</li>
<li>ntru_decrypt_poly()
: <a class="el" href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt.c</a>
, <a class="el" href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31">ntru_decrypt.h</a>
: <a class="el" href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">keypair.h</a>
</li>
<li>ntru_decrypt_string()
: <a class="el" href="ntru__decrypt_8c.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt.c</a>
, <a class="el" href="ntru__decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt.h</a>
, <a class="el" href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">decrypt.h</a>
: <a class="el" href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">decrypt.h</a>
</li>
<li>ntru_delete_keypair()
: <a class="el" href="ntru__keypair_8c.html#a5279c4990bc22bb9e735fe36372a6786">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">keypair.h</a>
</li>
<li>ntru_encrypt_poly()
: <a class="el" href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt.c</a>
, <a class="el" href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68">ntru_encrypt.h</a>
: <a class="el" href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">keypair.h</a>
</li>
<li>ntru_encrypt_string()
: <a class="el" href="ntru__encrypt_8c.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt.c</a>
, <a class="el" href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">encrypt.h</a>
, <a class="el" href="ntru__encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt.h</a>
: <a class="el" href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">encrypt.h</a>
</li>
<li>ntru_get_rnd_tern_poly_num()
: <a class="el" href="rnd_8h.html#a916a55c609c172ae4e48896032b36e47">rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#a916a55c609c172ae4e48896032b36e47">ntru_rnd.c</a>
, <a class="el" href="ntru__rnd_8h.html#a916a55c609c172ae4e48896032b36e47">ntru_rnd.h</a>
</li>
<li>ntru_malloc()
: <a class="el" href="ntru__mem_8h.html#a020790bf8b201fde92395cf975c0c691">ntru_mem.h</a>
, <a class="el" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_mem.c</a>
</li>
<li>ntru_params
: <a class="el" href="ntru_8h.html#a2f326c88fc033eca78a47ee8d387c592">ntru.h</a>
, <a class="el" href="ntru__params_8h.html#a2f326c88fc033eca78a47ee8d387c592">ntru_params.h</a>
</li>
<li>NTRU_WARN
: <a class="el" href="ntru__err_8h.html#a8b2647533f0e1a6f81e08e8315674d55">ntru_err.h</a>
</li>
<li>NTRU_WARN_DEBUG
: <a class="el" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">ntru_err.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
<li>poly_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#afa141976b665b94c0db9912bc50de4a1">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#afa141976b665b94c0db9912bc50de4a1">ntru_poly_ascii.h</a>
</li>
<li>poly_arr_to_base64()
: <a class="el" href="ntru__poly__ascii_8h.html#a16163cc57631a0965577cb0f89365ca0">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">ntru_poly_ascii.c</a>
</li>
<li>poly_delete()
: <a class="el" href="ntru__poly_8c.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru.h</a>
: <a class="el" href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru.h</a>
</li>
<li>poly_delete_all()
: <a class="el" href="ntru__poly_8c.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru.h</a>
: <a class="el" href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru.h</a>
</li>
<li>poly_delete_array()
: <a class="el" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru.h</a>
: <a class="el" href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru.h</a>
</li>
<li>poly_draw()
: <a class="el" href="ntru_8h.html#a80a8ce0f2944bc3df94291ef2f781498">ntru.h</a>
, <a class="el" href="ntru__poly_8c.html#a80a8ce0f2944bc3df94291ef2f781498">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a80a8ce0f2944bc3df94291ef2f781498">ntru_poly.h</a>
</li>
<li>poly_draw_pretty()
: <a class="el" href="ntru__poly_8c.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru.h</a>
</li>
<li>poly_inverse_poly_p()
: <a class="el" href="ntru__poly_8c.html#ae77b2014df42e5ed612206d5930ac608">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ae77b2014df42e5ed612206d5930ac608">ntru_poly.h</a>
</li>
<li>poly_inverse_poly_q()
: <a class="el" href="ntru__poly_8c.html#ace66beb516186e52f9b5b1ed8a397849">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ace66beb516186e52f9b5b1ed8a397849">ntru_poly.h</a>
</li>
<li>poly_mod2_to_modq()
: <a class="el" href="ntru__poly_8c.html#a891af13dc4355c9fab9ca3fafcac8054">ntru_poly.c</a>
: <a class="el" href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru.h</a>
</li>
<li>poly_new()
: <a class="el" href="ntru_8h.html#a20f86085d5eb5372fd25dc270069d38c">ntru.h</a>
, <a class="el" href="ntru__poly_8c.html#a20f86085d5eb5372fd25dc270069d38c">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a20f86085d5eb5372fd25dc270069d38c">ntru_poly.h</a>
</li>
<li>poly_starmultiply()
: <a class="el" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ae96f479ddd97af709a0ed50817fd3fb3">ntru_poly.h</a>
</li>
<li>poly_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#aa4d233591b7e51d6cf787edd3bfa91e2">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#aa4d233591b7e51d6cf787edd3bfa91e2">ntru_poly_ascii.h</a>
</li>
<li>poly_to_base64()
: <a class="el" href="ntru__poly__ascii_8c.html#a4ba0179e3ae0d5e721ff8429a8265e80">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#a4ba0179e3ae0d5e721ff8429a8265e80">ntru_poly_ascii.h</a>
</li>
<li>prints()
: <a class="el" href="ntru__string_8c.html#a55d4ce182c335ff6cca360909a7be395">ntru_string.c</a>
, <a class="el" href="ntru__string_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru_string.h</a>
, <a class="el" href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru.h</a>
: <a class="el" href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
<li>read_file()
: <a class="el" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">ntru_file.c</a>
, <a class="el" href="ntru__file_8h.html#a348c2a56837571f410d44631abc09dc4">ntru_file.h</a>
, <a class="el" href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">ntru.h</a>
</li>
<li>REALLOC
: <a class="el" href="ntru__mem_8h.html#a718b6446905826d711cb7ef00808bb4e">ntru_mem.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
<li>STD_FILE_BUF
: <a class="el" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">ntru_file.c</a>
: <a class="el" href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">ntru.h</a>
</li>
<li>string
: <a class="el" href="ntru__string_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru_string.h</a>
, <a class="el" href="ntru_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru.h</a>
: <a class="el" href="ntru_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru.h</a>
</li>
<li>string_delete()
: <a class="el" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru_string.c</a>
, <a class="el" href="ntru__string_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru_string.h</a>
, <a class="el" href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru.h</a>
: <a class="el" href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
<li>write_file()
: <a class="el" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">ntru_file.c</a>
, <a class="el" href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">ntru.h</a>
, <a class="el" href="ntru__file_8h.html#a1f8eef5ea12c77ed2491d96864eb0d43">ntru_file.h</a>
: <a class="el" href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">ntru.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,125 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: Globals</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li class="current"><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li><a href="globals.html"><span>All</span></a></li>
<li><a href="globals_func.html"><span>Functions</span></a></li>
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
<li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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 class="contents">
&#160;<ul>
<li>ASCII_BITS
: <a class="el" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ntru_common.h</a>
</li>
<li>CHAR_SIZE
: <a class="el" href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec">ntru_common.h</a>
</li>
<li>NTRU_ABORT
: <a class="el" href="ntru__err_8h.html#ab0f71521e9bc99beab8ece52bb00341a">ntru_err.h</a>
</li>
<li>NTRU_ABORT_DEBUG
: <a class="el" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">ntru_err.h</a>
</li>
<li>NTRU_WARN
: <a class="el" href="ntru__err_8h.html#a8b2647533f0e1a6f81e08e8315674d55">ntru_err.h</a>
</li>
<li>NTRU_WARN_DEBUG
: <a class="el" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">ntru_err.h</a>
</li>
<li>REALLOC
: <a class="el" href="ntru__mem_8h.html#a718b6446905826d711cb7ef00808bb4e">ntru_mem.h</a>
</li>
<li>STD_FILE_BUF
: <a class="el" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">ntru_file.c</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -69,22 +69,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>All</span></a></li>
<li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
<li><a href="globals_type.html"><span>Typedefs</span></a></li>
<li><a href="globals_defs.html"><span>Macros</span></a></li>
</ul>
</div>
<div id="navrow4" class="tabs3">
<ul class="tablist">
<li><a href="#index_a"><span>a</span></a></li>
<li><a href="#index_b"><span>b</span></a></li>
<li><a href="#index_e"><span>e</span></a></li>
<li><a href="#index_f"><span>f</span></a></li>
<li><a href="#index_g"><span>g</span></a></li>
<li><a href="#index_i"><span>i</span></a></li>
<li><a href="#index_n"><span>n</span></a></li>
<li><a href="#index_p"><span>p</span></a></li>
<li><a href="#index_r"><span>r</span></a></li>
<li><a href="#index_s"><span>s</span></a></li>
<li class="current"><a href="#index_w"><span>w</span></a></li>
</ul>
</div>
</div><!-- top -->
@ -93,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -103,256 +87,75 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div>
<div class="contents">
&#160;
<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
<li>ascii_bin_to_bin_poly()
: <a class="el" href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ntru_ascii_poly.h</a>
</li>
<li>ascii_to_bin_poly_arr()
: <a class="el" href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805">ntru_ascii_poly.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
<li>base64_to_poly_arr()
: <a class="el" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">ntru_ascii_poly.c</a>
, <a class="el" href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d">ntru_ascii_poly.h</a>
</li>
<li>bin_poly_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8h.html#ab9464c96c3ebec6ee716c604fdc4ad21">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">ntru_poly_ascii.c</a>
</li>
<li>bin_poly_to_ascii()
: <a class="el" href="ntru__poly__ascii_8h.html#a0d86ab2dede39b332d4149e16b2046b8">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#a0d86ab2dede39b332d4149e16b2046b8">ntru_poly_ascii.c</a>
</li>
</ul>
<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
&#160;<ul>
<li>export_priv_key()
: <a class="el" href="ntru__keypair_8c.html#afa29f14a14486d3f6b979ee900d7e738">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">keypair.h</a>
: <a class="el" href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">keypair.h</a>
</li>
<li>export_public_key()
: <a class="el" href="ntru__keypair_8c.html#a41741ed660cb806c47335f66055e1bdd">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">keypair.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
<li>fmpz_add_n()
: <a class="el" href="ntru__poly_8c.html#ad2a11e832808ef1cfee0eed1cc02f4b9">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ad2a11e832808ef1cfee0eed1cc02f4b9">ntru_poly.h</a>
</li>
<li>fmpz_cmp_si_n()
: <a class="el" href="ntru__poly_8h.html#aaaac83ec72414aa208832442657c3520">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#aaaac83ec72414aa208832442657c3520">ntru_poly.c</a>
</li>
<li>fmpz_invmod_ui()
: <a class="el" href="ntru__poly_8c.html#a59da1b7962829af8f18d58c05f588606">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a59da1b7962829af8f18d58c05f588606">ntru_poly.h</a>
</li>
<li>fmpz_poly_mod()
: <a class="el" href="ntru__poly_8h.html#a7c4f5e96355518dc97a23da8f34b661a">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">ntru_poly.c</a>
</li>
<li>fmpz_poly_mod_unsigned()
: <a class="el" href="ntru__poly_8h.html#ae7d0d8364dba689df3fb4904610634cc">ntru_poly.h</a>
, <a class="el" href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">ntru_poly.c</a>
</li>
<li>fmpz_poly_set_coeff_fmpz_n()
: <a class="el" href="ntru__poly_8c.html#ab1f966fe680d1ce7c19c8c812d1932a7">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ab1f966fe680d1ce7c19c8c812d1932a7">ntru_poly.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
<li>get_bin_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#afd3f036287b4f62846c1a236426d73e1">ntru_poly_ascii.c</a>
</li>
<li>get_int_to_bin_str()
: <a class="el" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">ntru_ascii_poly.c</a>
: <a class="el" href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">keypair.h</a>
</li>
<li>get_rnd_int()
: <a class="el" href="rnd_8h.html#ad85ebfb1cb4b4942942213b750812cf0">rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#ad85ebfb1cb4b4942942213b750812cf0">ntru_rnd.c</a>
, <a class="el" href="ntru__rnd_8h.html#ad85ebfb1cb4b4942942213b750812cf0">ntru_rnd.h</a>
</li>
<li>get_urnd_int()
: <a class="el" href="rnd_8h.html#a99e4820cab7157eb1e16109e21dac81f">rnd.h</a>
, <a class="el" href="ntru__rnd_8h.html#a99e4820cab7157eb1e16109e21dac81f">ntru_rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#a99e4820cab7157eb1e16109e21dac81f">ntru_rnd.c</a>
</li>
</ul>
<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
<li>import_priv_key()
: <a class="el" href="ntru__keypair_8c.html#a1f917ea6ef5302826c888e5c88e0869e">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">keypair.h</a>
: <a class="el" href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">keypair.h</a>
</li>
<li>import_public_key()
: <a class="el" href="ntru__keypair_8c.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">keypair.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
<li>ntru_calloc()
: <a class="el" href="ntru__mem_8c.html#a37e0be4fd8d0b677a41c8287ef47885c">ntru_mem.c</a>
, <a class="el" href="ntru__mem_8h.html#a37e0be4fd8d0b677a41c8287ef47885c">ntru_mem.h</a>
: <a class="el" href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">keypair.h</a>
</li>
<li>ntru_create_keypair()
: <a class="el" href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">keypair.h</a>
, <a class="el" href="ntru__keypair_8c.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_keypair.h</a>
</li>
<li>ntru_decrypt_poly()
: <a class="el" href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt.c</a>
, <a class="el" href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31">ntru_decrypt.h</a>
</li>
<li>ntru_decrypt_string()
: <a class="el" href="ntru__decrypt_8c.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt.c</a>
, <a class="el" href="ntru__decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt.h</a>
, <a class="el" href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">decrypt.h</a>
: <a class="el" href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">decrypt.h</a>
</li>
<li>ntru_delete_keypair()
: <a class="el" href="ntru__keypair_8c.html#a5279c4990bc22bb9e735fe36372a6786">ntru_keypair.c</a>
, <a class="el" href="ntru__keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">keypair.h</a>
</li>
<li>ntru_encrypt_poly()
: <a class="el" href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68">ntru_encrypt.h</a>
, <a class="el" href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt.c</a>
: <a class="el" href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">keypair.h</a>
</li>
<li>ntru_encrypt_string()
: <a class="el" href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">encrypt.h</a>
, <a class="el" href="ntru__encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt.h</a>
, <a class="el" href="ntru__encrypt_8c.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt.c</a>
</li>
<li>ntru_get_rnd_tern_poly_num()
: <a class="el" href="ntru__rnd_8h.html#a916a55c609c172ae4e48896032b36e47">ntru_rnd.h</a>
, <a class="el" href="rnd_8h.html#a916a55c609c172ae4e48896032b36e47">rnd.h</a>
, <a class="el" href="ntru__rnd_8c.html#a916a55c609c172ae4e48896032b36e47">ntru_rnd.c</a>
</li>
<li>ntru_malloc()
: <a class="el" href="ntru__mem_8h.html#a020790bf8b201fde92395cf975c0c691">ntru_mem.h</a>
, <a class="el" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_mem.c</a>
</li>
</ul>
<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
<li>poly_arr_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#afa141976b665b94c0db9912bc50de4a1">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#afa141976b665b94c0db9912bc50de4a1">ntru_poly_ascii.h</a>
</li>
<li>poly_arr_to_base64()
: <a class="el" href="ntru__poly__ascii_8h.html#a16163cc57631a0965577cb0f89365ca0">ntru_poly_ascii.h</a>
, <a class="el" href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">ntru_poly_ascii.c</a>
: <a class="el" href="rnd_8h.html#a916a55c609c172ae4e48896032b36e47">rnd.h</a>
</li>
<li>poly_delete()
: <a class="el" href="ntru__poly_8c.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru.h</a>
: <a class="el" href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">ntru.h</a>
</li>
<li>poly_delete_all()
: <a class="el" href="ntru__poly_8c.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru.h</a>
: <a class="el" href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">ntru.h</a>
</li>
<li>poly_delete_array()
: <a class="el" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru.h</a>
: <a class="el" href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">ntru.h</a>
</li>
<li>poly_draw()
: <a class="el" href="ntru__poly_8h.html#a80a8ce0f2944bc3df94291ef2f781498">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a80a8ce0f2944bc3df94291ef2f781498">ntru.h</a>
, <a class="el" href="ntru__poly_8c.html#a80a8ce0f2944bc3df94291ef2f781498">ntru_poly.c</a>
: <a class="el" href="ntru_8h.html#a80a8ce0f2944bc3df94291ef2f781498">ntru.h</a>
</li>
<li>poly_draw_pretty()
: <a class="el" href="ntru__poly_8c.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru.h</a>
</li>
<li>poly_inverse_poly_p()
: <a class="el" href="ntru__poly_8c.html#ae77b2014df42e5ed612206d5930ac608">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ae77b2014df42e5ed612206d5930ac608">ntru_poly.h</a>
</li>
<li>poly_inverse_poly_q()
: <a class="el" href="ntru__poly_8c.html#ace66beb516186e52f9b5b1ed8a397849">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ace66beb516186e52f9b5b1ed8a397849">ntru_poly.h</a>
</li>
<li>poly_mod2_to_modq()
: <a class="el" href="ntru__poly_8c.html#a891af13dc4355c9fab9ca3fafcac8054">ntru_poly.c</a>
: <a class="el" href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">ntru.h</a>
</li>
<li>poly_new()
: <a class="el" href="ntru__poly_8h.html#a20f86085d5eb5372fd25dc270069d38c">ntru_poly.h</a>
, <a class="el" href="ntru_8h.html#a20f86085d5eb5372fd25dc270069d38c">ntru.h</a>
, <a class="el" href="ntru__poly_8c.html#a20f86085d5eb5372fd25dc270069d38c">ntru_poly.c</a>
</li>
<li>poly_starmultiply()
: <a class="el" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">ntru_poly.c</a>
, <a class="el" href="ntru__poly_8h.html#ae96f479ddd97af709a0ed50817fd3fb3">ntru_poly.h</a>
</li>
<li>poly_to_ascii()
: <a class="el" href="ntru__poly__ascii_8c.html#aa4d233591b7e51d6cf787edd3bfa91e2">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#aa4d233591b7e51d6cf787edd3bfa91e2">ntru_poly_ascii.h</a>
</li>
<li>poly_to_base64()
: <a class="el" href="ntru__poly__ascii_8c.html#a4ba0179e3ae0d5e721ff8429a8265e80">ntru_poly_ascii.c</a>
, <a class="el" href="ntru__poly__ascii_8h.html#a4ba0179e3ae0d5e721ff8429a8265e80">ntru_poly_ascii.h</a>
: <a class="el" href="ntru_8h.html#a20f86085d5eb5372fd25dc270069d38c">ntru.h</a>
</li>
<li>prints()
: <a class="el" href="ntru__string_8c.html#a55d4ce182c335ff6cca360909a7be395">ntru_string.c</a>
, <a class="el" href="ntru__string_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru_string.h</a>
, <a class="el" href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru.h</a>
: <a class="el" href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">ntru.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
<li>read_file()
: <a class="el" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">ntru_file.c</a>
, <a class="el" href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">ntru.h</a>
, <a class="el" href="ntru__file_8h.html#a348c2a56837571f410d44631abc09dc4">ntru_file.h</a>
: <a class="el" href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">ntru.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
<li>string_delete()
: <a class="el" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru_string.c</a>
, <a class="el" href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru.h</a>
, <a class="el" href="ntru__string_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru_string.h</a>
: <a class="el" href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">ntru.h</a>
</li>
</ul>
<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
<li>write_file()
: <a class="el" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">ntru_file.c</a>
, <a class="el" href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">ntru.h</a>
, <a class="el" href="ntru__file_8h.html#a1f8eef5ea12c77ed2491d96864eb0d43">ntru_file.h</a>
: <a class="el" href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">ntru.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -69,7 +69,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>All</span></a></li>
<li><a href="globals_func.html"><span>Functions</span></a></li>
<li class="current"><a href="globals_type.html"><span>Typedefs</span></a></li>
<li><a href="globals_defs.html"><span>Macros</span></a></li>
</ul>
</div>
</div><!-- top -->
@ -78,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -90,22 +89,19 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="contents">
&#160;<ul>
<li>keypair
: <a class="el" href="ntru__keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">ntru_keypair.h</a>
, <a class="el" href="keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">keypair.h</a>
: <a class="el" href="keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">keypair.h</a>
</li>
<li>ntru_params
: <a class="el" href="ntru__params_8h.html#a2f326c88fc033eca78a47ee8d387c592">ntru_params.h</a>
, <a class="el" href="ntru_8h.html#a2f326c88fc033eca78a47ee8d387c592">ntru.h</a>
: <a class="el" href="ntru_8h.html#a2f326c88fc033eca78a47ee8d387c592">ntru.h</a>
</li>
<li>string
: <a class="el" href="ntru__string_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru_string.h</a>
, <a class="el" href="ntru_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru.h</a>
: <a class="el" href="ntru_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9">ntru.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -144,7 +144,7 @@ A yellow dashed arrow denotes a relation between a template instance and the tem
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -105,7 +105,7 @@ Goals</h1>
<p>Optimizing the algorithm itself is not within our scope. However, the library may undergo heavy changes on the mathematical implementation of polynomial arithmetic, in order to optimize run-time behaviour.</p>
<h1><a class="anchor" id="algos"></a>
Algorithms</h1>
<p>Most of the algorithms in <a class="el" href="ntru__poly_8c.html" title="operations on polynomials ">ntru_poly.c</a>, <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a>, <a class="el" href="ntru__encrypt_8c.html" title="NTRU encryption. ">ntru_encrypt.c</a> and <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a> are based on the pseudo-code from <a href="http://www.crypto.wpi.edu/Publications/Documents/ms_corourke.pdf">Efficient NTRU Implementations by Colleen Marie O'Rourke</a>.</p>
<p>Most of the algorithms in ntru_poly.c, ntru_decrypt.c, ntru_encrypt.c and ntru_keypair.c are based on the pseudo-code from <a href="http://www.crypto.wpi.edu/Publications/Documents/ms_corourke.pdf">Efficient NTRU Implementations by Colleen Marie O'Rourke</a>.</p>
<p>Further work is based on <a href="http://www.math.uni-hamburg.de/home/kuehn/moldenhauer-bsc-NTRUKryptosystem-final.pdf">Das NTRU-Kryptosystem von Anja Moldenhauer</a> and the official <a href="https://www.securityinnovation.com/uploads/Crypto/NTRUTech014.pdf">NTRU Cryptosystems Technical Report #14</a>.</p>
<h1><a class="anchor" id="license"></a>
License</h1>
@ -143,7 +143,7 @@ References</h1>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/keypair.h File Reference</title>
<title>post quantum cryptography: keypair.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>
@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,10 +78,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
@ -103,9 +99,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><div class="textblock"><div class="dynheader">
Include dependency graph for keypair.h:</div>
<div class="dyncontent">
<div class="center"><img src="keypair_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2include_2keypair_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2include_2keypair_8h" id="_2home_2travis_2build_2hasufell_2pqc_2include_2keypair_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="147,117,200,147"/></map>
<div class="center"><img src="keypair_8h__incl.png" border="0" usemap="#keypair_8h" alt=""/></div>
<map name="keypair_8h" id="keypair_8h">
<area shape="rect" id="node3" href="ntru_8h.html" title="public API, basic data types " alt="" coords="147,83,200,112"/></map>
</div>
</div>
<p><a href="keypair_8h_source.html">Go to the source code of this file.</a></p>
@ -195,8 +191,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00111">111</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a41741ed660cb806c47335f66055e1bdd"></a>
@ -238,8 +232,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00096">96</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a1f917ea6ef5302826c888e5c88e0869e"></a>
@ -288,8 +280,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00157">157</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a4e2c6da04c55e8c1b6c447f4cc9f1d6f"></a>
@ -330,8 +320,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00132">132</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a6873d41211a92c4f6b0074ef34ae1743"></a>
@ -370,16 +358,6 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>Creates an NTRU key pair, consisting of public and private components.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a random polynomial </td></tr>
<tr><td class="paramname">g</td><td>a random polynomial </td></tr>
<tr><td class="paramname">pair</td><td>store private and public components here [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context</td></tr>
</table>
</dd>
</dl>
<p>Creates an NTRU key pair, consisting of public and private components.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a random polynomial </td></tr>
@ -389,9 +367,6 @@ Functions</h2></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success, false if f or g are not invertible (then the caller hast to try different ones) </dd></dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00047">47</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
@ -416,14 +391,12 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00197">197</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,3 +1,3 @@
<map id="/home/travis/build/hasufell/pqc/include/keypair.h" name="/home/travis/build/hasufell/pqc/include/keypair.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="147,117,200,147"/>
<map id="keypair.h" name="keypair.h">
<area shape="rect" id="node3" href="$ntru_8h.html" title="public API, basic data types " alt="" coords="147,83,200,112"/>
</map>

View File

@ -1 +1 @@
2b4a3f942ca05de6bc8500cbf9030539
5244a16f466f27cefc219ec159829f7d

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/keypair.h Source File</title>
<title>post quantum cryptography: keypair.h Source File</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>
@ -64,12 +64,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,11 +79,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">keypair.h</div> </div>
@ -123,10 +119,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structkeypair.html">keypair</a> <a class="code" href="structkeypair.html">keypair</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">struct </span><a class="code" href="structkeypair.html">keypair</a> {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structkeypair.html"> 49</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structkeypair.html">keypair</a> {</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1"> 54</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799"> 59</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4"> 64</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;};</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
@ -163,22 +159,22 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* PUBLIC_NTRU_KEYPAIR_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="keypair_8h_html_a5279c4990bc22bb9e735fe36372a6786"><div class="ttname"><a href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a></div><div class="ttdeci">void ntru_delete_keypair(keypair *pair)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00197">ntru_keypair.c:197</a></div></div>
<div class="ttc" id="keypair_8h_html_a1f917ea6ef5302826c888e5c88e0869e"><div class="ttname"><a href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a></div><div class="ttdeci">void import_priv_key(char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00157">ntru_keypair.c:157</a></div></div>
<div class="ttc" id="keypair_8h_html_a5279c4990bc22bb9e735fe36372a6786"><div class="ttname"><a href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a></div><div class="ttdeci">void ntru_delete_keypair(keypair *pair)</div></div>
<div class="ttc" id="keypair_8h_html_a1f917ea6ef5302826c888e5c88e0869e"><div class="ttname"><a href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a></div><div class="ttdeci">void import_priv_key(char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, ntru_params *params)</div></div>
<div class="ttc" id="ntru_8h_html"><div class="ttname"><a href="ntru_8h.html">ntru.h</a></div><div class="ttdoc">public API, basic data types </div></div>
<div class="ttc" id="keypair_8h_html_afa29f14a14486d3f6b979ee900d7e738"><div class="ttname"><a href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a></div><div class="ttdeci">void export_priv_key(char const *const filename, fmpz_poly_t priv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00111">ntru_keypair.c:111</a></div></div>
<div class="ttc" id="keypair_8h_html_a6873d41211a92c4f6b0074ef34ae1743"><div class="ttname"><a href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a></div><div class="ttdeci">bool ntru_create_keypair(fmpz_poly_t f, fmpz_poly_t g, keypair *pair, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00047">ntru_keypair.c:47</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="structkeypair_html_a9e63f1d275b91c9d9716fb4069461799"><div class="ttname"><a href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair::priv_inv</a></div><div class="ttdeci">fmpz_poly_t priv_inv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00056">ntru_keypair.h:56</a></div></div>
<div class="ttc" id="keypair_8h_html_a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><div class="ttname"><a href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a></div><div class="ttdeci">void import_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00132">ntru_keypair.c:132</a></div></div>
<div class="ttc" id="structkeypair_html_afa635c70f233d0b7449b4a17513646c4"><div class="ttname"><a href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair::pub</a></div><div class="ttdeci">fmpz_poly_t pub</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00061">ntru_keypair.h:61</a></div></div>
<div class="ttc" id="structkeypair_html_a9e9805ad001216da53f2c57accb288e1"><div class="ttname"><a href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">keypair::priv</a></div><div class="ttdeci">fmpz_poly_t priv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00051">ntru_keypair.h:51</a></div></div>
<div class="ttc" id="structkeypair_html"><div class="ttname"><a href="structkeypair.html">keypair</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00046">ntru_keypair.h:46</a></div></div>
<div class="ttc" id="keypair_8h_html_a41741ed660cb806c47335f66055e1bdd"><div class="ttname"><a href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a></div><div class="ttdeci">void export_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00096">ntru_keypair.c:96</a></div></div>
<div class="ttc" id="keypair_8h_html_afa29f14a14486d3f6b979ee900d7e738"><div class="ttname"><a href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a></div><div class="ttdeci">void export_priv_key(char const *const filename, fmpz_poly_t priv, ntru_params *params)</div></div>
<div class="ttc" id="keypair_8h_html_a6873d41211a92c4f6b0074ef34ae1743"><div class="ttname"><a href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a></div><div class="ttdeci">bool ntru_create_keypair(fmpz_poly_t f, fmpz_poly_t g, keypair *pair, ntru_params *params)</div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00047">ntru.h:47</a></div></div>
<div class="ttc" id="structkeypair_html_a9e63f1d275b91c9d9716fb4069461799"><div class="ttname"><a href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair::priv_inv</a></div><div class="ttdeci">fmpz_poly_t priv_inv</div><div class="ttdef"><b>Definition:</b> <a href="keypair_8h_source.html#l00059">keypair.h:59</a></div></div>
<div class="ttc" id="keypair_8h_html_a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><div class="ttname"><a href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a></div><div class="ttdeci">void import_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div></div>
<div class="ttc" id="structkeypair_html_afa635c70f233d0b7449b4a17513646c4"><div class="ttname"><a href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair::pub</a></div><div class="ttdeci">fmpz_poly_t pub</div><div class="ttdef"><b>Definition:</b> <a href="keypair_8h_source.html#l00064">keypair.h:64</a></div></div>
<div class="ttc" id="structkeypair_html_a9e9805ad001216da53f2c57accb288e1"><div class="ttname"><a href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">keypair::priv</a></div><div class="ttdeci">fmpz_poly_t priv</div><div class="ttdef"><b>Definition:</b> <a href="keypair_8h_source.html#l00054">keypair.h:54</a></div></div>
<div class="ttc" id="structkeypair_html"><div class="ttname"><a href="structkeypair.html">keypair</a></div><div class="ttdef"><b>Definition:</b> <a href="keypair_8h_source.html#l00049">keypair.h:49</a></div></div>
<div class="ttc" id="keypair_8h_html_a41741ed660cb806c47335f66055e1bdd"><div class="ttname"><a href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a></div><div class="ttdeci">void export_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/ntru.h File Reference</title>
<title>post quantum cryptography: ntru.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>
@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,10 +78,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
@ -101,8 +97,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2include_2ntru_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2include_2ntru_8h" id="_2home_2travis_2build_2hasufell_2pqc_2include_2ntru_8h">
<div class="center"><img src="ntru_8h__incl.png" border="0" usemap="#ntru_8h" alt=""/></div>
<map name="ntru_8h" id="ntru_8h">
</map>
</div>
</div>
@ -201,8 +197,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00123">123</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a83297bc2ab5b6e7ce42553570dd8268f"></a>
@ -237,8 +231,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00149">149</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a3f53c63383ff301b20dcede0783869a7"></a>
@ -262,8 +254,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00131">131</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a80a8ce0f2944bc3df94291ef2f781498"></a>
@ -287,8 +277,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00574">574</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="aec098d00160d2d502eb1f8a7c3fa5453"></a>
@ -312,8 +300,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00583">583</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a20f86085d5eb5372fd25dc270069d38c"></a>
@ -356,8 +342,6 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated polynomial pointer, must be freed with fmpz_poly_clear() </dd></dl>
<p>Definition at line <a class="el" href="ntru__poly_8c_source.html#l00110">110</a> of file <a class="el" href="ntru__poly_8c_source.html">ntru_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a55d4ce182c335ff6cca360909a7be395"></a>
@ -381,8 +365,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__string_8c_source.html#l00037">37</a> of file <a class="el" href="ntru__string_8c_source.html">ntru_string.c</a>.</p>
</div>
</div>
<a class="anchor" id="a348c2a56837571f410d44631abc09dc4"></a>
@ -405,17 +387,7 @@ Functions</h2></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which must be freed by the caller or NULL on failure</dd></dl>
<p>Reads a file and returns a newly allocated string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>file to open </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which must be freed by the caller or NULL on failure (e.g. if the file could not be opened/closed) </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00050">50</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which must be freed by the caller or NULL on failure </dd></dl>
</div>
</div>
@ -440,8 +412,6 @@ Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__string_8c_source.html#l00047">47</a> of file <a class="el" href="ntru__string_8c_source.html">ntru_string.c</a>.</p>
</div>
</div>
<a class="anchor" id="af2a0fc4dd4109749d8f3100a913cc304"></a>
@ -468,14 +438,6 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>Write a string to a file. The file will be pruned or created if it does not exist.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wstring</td><td>the string to write to the file </td></tr>
<tr><td class="paramname">filename</td><td>the name of the file to write to</td></tr>
</table>
</dd>
</dl>
<p>Write a string to a file. The file will be pruned or created if it does not exist.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wstring</td><td>the string to write to the file </td></tr>
@ -483,16 +445,13 @@ Functions</h2></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success or false for failure if fopen or fclose failed </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00107">107</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,2 +1,2 @@
<map id="/home/travis/build/hasufell/pqc/include/ntru.h" name="/home/travis/build/hasufell/pqc/include/ntru.h">
<map id="ntru.h" name="ntru.h">
</map>

View File

@ -1 +1 @@
eacd6dc5eb22433d8cb012ec28b3ce8a
4f58550f1bf3fc0e7a21db75f42bafb9

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -4,7 +4,7 @@
<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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/include/ntru.h Source File</title>
<title>post quantum cryptography: ntru.h Source File</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>
@ -64,12 +64,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
@ -78,11 +79,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru.h</div> </div>
@ -122,15 +118,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="ntru_8h.html#a63e2e3ee7db5274c6a3929edfc07c6c9"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structstring.html">string</a> <a class="code" href="structstring.html">string</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">struct </span><a class="code" href="structntru__params.html">ntru_params</a> {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; uint32_t <a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; uint32_t <a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; uint32_t <a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structntru__params.html"> 47</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structntru__params.html">ntru_params</a> {</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff"> 52</a></span>&#160; uint32_t <a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7"> 56</a></span>&#160; uint32_t <a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f"> 60</a></span>&#160; uint32_t <a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">struct </span><a class="code" href="structstring.html">string</a> {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structstring.html"> 66</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structstring.html">string</a> {</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structstring.html#aa1b2f3a2ddd1ed38245b8d4590aadf93"> 74</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structstring.html#aa1b2f3a2ddd1ed38245b8d4590aadf93">ptr</a>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a"> 78</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;};</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
@ -168,27 +164,27 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_NTRU_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru_8h_html_ac1b5f66fbbbdfc7901357ddcfec52e5a"><div class="ttname"><a href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a></div><div class="ttdeci">void string_delete(string *del_string)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8c_source.html#l00047">ntru_string.c:47</a></div></div>
<div class="ttc" id="ntru_8h_html_a20f86085d5eb5372fd25dc270069d38c"><div class="ttname"><a href="ntru_8h.html#a20f86085d5eb5372fd25dc270069d38c">poly_new</a></div><div class="ttdeci">void poly_new(fmpz_poly_t new_poly, int const *const c, const size_t len)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00110">ntru_poly.c:110</a></div></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00053">ntru_string.h:53</a></div></div>
<div class="ttc" id="ntru_8h_html_a3f53c63383ff301b20dcede0783869a7"><div class="ttname"><a href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a></div><div class="ttdeci">void poly_delete_array(fmpz_poly_t **poly_array)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00131">ntru_poly.c:131</a></div></div>
<div class="ttc" id="structntru__params_html_afb8425ee3db2b917b3c4e8d9b75bd3ff"><div class="ttname"><a href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">ntru_params::N</a></div><div class="ttdeci">uint32_t N</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00048">ntru_params.h:48</a></div></div>
<div class="ttc" id="ntru_8h_html_a80a8ce0f2944bc3df94291ef2f781498"><div class="ttname"><a href="ntru_8h.html#a80a8ce0f2944bc3df94291ef2f781498">poly_draw</a></div><div class="ttdeci">void poly_draw(const fmpz_poly_t poly)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00574">ntru_poly.c:574</a></div></div>
<div class="ttc" id="ntru_8h_html_a83297bc2ab5b6e7ce42553570dd8268f"><div class="ttname"><a href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">poly_delete_all</a></div><div class="ttdeci">void poly_delete_all(fmpz_poly_t poly,...)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00149">ntru_poly.c:149</a></div></div>
<div class="ttc" id="structntru__params_html_a41b368825e1eb126604e13e8f549ec8f"><div class="ttname"><a href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">ntru_params::p</a></div><div class="ttdeci">uint32_t p</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00056">ntru_params.h:56</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru_8h_html_af2a0fc4dd4109749d8f3100a913cc304"><div class="ttname"><a href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">write_file</a></div><div class="ttdeci">void write_file(string const *wstring, char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00107">ntru_file.c:107</a></div></div>
<div class="ttc" id="ntru_8h_html_a55d4ce182c335ff6cca360909a7be395"><div class="ttname"><a href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">prints</a></div><div class="ttdeci">void prints(const string *print_string)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8c_source.html#l00037">ntru_string.c:37</a></div></div>
<div class="ttc" id="structstring_html"><div class="ttname"><a href="structstring.html">string</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00041">ntru_string.h:41</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00052">ntru_params.h:52</a></div></div>
<div class="ttc" id="ntru_8h_html_a348c2a56837571f410d44631abc09dc4"><div class="ttname"><a href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">read_file</a></div><div class="ttdeci">string * read_file(char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00050">ntru_file.c:50</a></div></div>
<div class="ttc" id="ntru_8h_html_a27ff2116f70bcbf5028219adcae4c5f0"><div class="ttname"><a href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">poly_delete</a></div><div class="ttdeci">void poly_delete(fmpz_poly_t poly)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00123">ntru_poly.c:123</a></div></div>
<div class="ttc" id="structstring_html_afd608f62303958cea6f1f7afdec1e282"><div class="ttname"><a href="structstring.html#afd608f62303958cea6f1f7afdec1e282">string::ptr</a></div><div class="ttdeci">char * ptr</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00049">ntru_string.h:49</a></div></div>
<div class="ttc" id="ntru_8h_html_aec098d00160d2d502eb1f8a7c3fa5453"><div class="ttname"><a href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">poly_draw_pretty</a></div><div class="ttdeci">void poly_draw_pretty(const fmpz_poly_t poly)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00583">ntru_poly.c:583</a></div></div>
<div class="ttc" id="ntru_8h_html_ac1b5f66fbbbdfc7901357ddcfec52e5a"><div class="ttname"><a href="ntru_8h.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a></div><div class="ttdeci">void string_delete(string *del_string)</div></div>
<div class="ttc" id="ntru_8h_html_a20f86085d5eb5372fd25dc270069d38c"><div class="ttname"><a href="ntru_8h.html#a20f86085d5eb5372fd25dc270069d38c">poly_new</a></div><div class="ttdeci">void poly_new(fmpz_poly_t new_poly, int const *const c, const size_t len)</div></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00078">ntru.h:78</a></div></div>
<div class="ttc" id="structstring_html_aa1b2f3a2ddd1ed38245b8d4590aadf93"><div class="ttname"><a href="structstring.html#aa1b2f3a2ddd1ed38245b8d4590aadf93">string::ptr</a></div><div class="ttdeci">char * ptr</div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00074">ntru.h:74</a></div></div>
<div class="ttc" id="ntru_8h_html_a3f53c63383ff301b20dcede0783869a7"><div class="ttname"><a href="ntru_8h.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a></div><div class="ttdeci">void poly_delete_array(fmpz_poly_t **poly_array)</div></div>
<div class="ttc" id="structntru__params_html_afb8425ee3db2b917b3c4e8d9b75bd3ff"><div class="ttname"><a href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">ntru_params::N</a></div><div class="ttdeci">uint32_t N</div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00052">ntru.h:52</a></div></div>
<div class="ttc" id="ntru_8h_html_a80a8ce0f2944bc3df94291ef2f781498"><div class="ttname"><a href="ntru_8h.html#a80a8ce0f2944bc3df94291ef2f781498">poly_draw</a></div><div class="ttdeci">void poly_draw(const fmpz_poly_t poly)</div></div>
<div class="ttc" id="ntru_8h_html_a83297bc2ab5b6e7ce42553570dd8268f"><div class="ttname"><a href="ntru_8h.html#a83297bc2ab5b6e7ce42553570dd8268f">poly_delete_all</a></div><div class="ttdeci">void poly_delete_all(fmpz_poly_t poly,...)</div></div>
<div class="ttc" id="structntru__params_html_a41b368825e1eb126604e13e8f549ec8f"><div class="ttname"><a href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">ntru_params::p</a></div><div class="ttdeci">uint32_t p</div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00060">ntru.h:60</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00047">ntru.h:47</a></div></div>
<div class="ttc" id="ntru_8h_html_af2a0fc4dd4109749d8f3100a913cc304"><div class="ttname"><a href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304">write_file</a></div><div class="ttdeci">void write_file(string const *wstring, char const *const filename)</div></div>
<div class="ttc" id="ntru_8h_html_a55d4ce182c335ff6cca360909a7be395"><div class="ttname"><a href="ntru_8h.html#a55d4ce182c335ff6cca360909a7be395">prints</a></div><div class="ttdeci">void prints(const string *print_string)</div></div>
<div class="ttc" id="structstring_html"><div class="ttname"><a href="structstring.html">string</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00066">ntru.h:66</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru_8h_source.html#l00056">ntru.h:56</a></div></div>
<div class="ttc" id="ntru_8h_html_a348c2a56837571f410d44631abc09dc4"><div class="ttname"><a href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4">read_file</a></div><div class="ttdeci">string * read_file(char const *const filename)</div></div>
<div class="ttc" id="ntru_8h_html_a27ff2116f70bcbf5028219adcae4c5f0"><div class="ttname"><a href="ntru_8h.html#a27ff2116f70bcbf5028219adcae4c5f0">poly_delete</a></div><div class="ttdeci">void poly_delete(fmpz_poly_t poly)</div></div>
<div class="ttc" id="ntru_8h_html_aec098d00160d2d502eb1f8a7c3fa5453"><div class="ttname"><a href="ntru_8h.html#aec098d00160d2d502eb1f8a7c3fa5453">poly_draw_pretty</a></div><div class="ttdeci">void poly_draw_pretty(const fmpz_poly_t poly)</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Mon Jun 9 2014 00:26:38 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>

View File

@ -1,296 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_ascii_poly.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_ascii_poly.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>ascii to polynomials
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__ascii__poly_8h_source.html">ntru_ascii_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__mem_8h_source.html">ntru_mem.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;glib.h&gt;</code><br />
<code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_ascii_poly.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__ascii__poly_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8c">
<area shape="rect" id="node3" href="ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="276,117,396,147"/><area shape="rect" id="node5" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="70,195,182,224"/><area shape="rect" id="node9" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="291,195,384,224"/><area shape="rect" id="node12" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="526,195,630,224"/><area shape="rect" id="node21" href="ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="30,117,120,147"/><area shape="rect" id="node25" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="660,117,746,147"/><area shape="rect" id="node27" href="ntru__err_8h.html" title="error handling " alt="" coords="947,195,1024,224"/></map>
</div>
</div>
<p><a href="ntru__ascii__poly_8c_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a2d2f760b6a98bd87248c1d3e120a665b"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">get_int_to_bin_str</a> (uint8_t value)</td></tr>
<tr class="separator:a2d2f760b6a98bd87248c1d3e120a665b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a> (const char *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3237071bca2489c3b2efd46e674e0805"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a> (const <a class="el" href="structstring.html">string</a> *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a3237071bca2489c3b2efd46e674e0805"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8460cd27ad4562f560bb304609a3e06d"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a> (const <a class="el" href="structstring.html">string</a> *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a8460cd27ad4562f560bb304609a3e06d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>ascii to polynomials </p>
<p>This file allows to convert ascii strings, including base64 encoded ones, to polynomials. </p>
<p>Definition in file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="aa5d0d4abdb2ce837a0a3b6e478c8f1a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t* ascii_bin_to_bin_poly </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a "binary" ascii string to a binary polyomial. The ascii string will be converted to a binary representation and the following mapping will apply between binary -&gt; poly:</p>
<p>1 =&gt; 1</p>
<p>0 =&gt; -1</p>
<p>If the polynomial is of degree less than N -1, then it will be filled with trailing 2's for later use in <a class="el" href="ntru__poly__ascii_8c.html#a0d86ab2dede39b332d4149e16b2046b8">bin_poly_to_ascii()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into binary polynomial format </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of binary polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00081">81</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a3237071bca2489c3b2efd46e674e0805"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t** ascii_to_bin_poly_arr </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an ascii string to an array of binary polyomials. The ascii string will be converted to a binary representation and the following mapping will apply between binary -&gt; poly:</p>
<p>1 =&gt; 1</p>
<p>0 =&gt; -1</p>
<p>If the last polynomial is of degree less than N -1, then it will be filled with trailing 2's for later use in <a class="el" href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">bin_poly_arr_to_ascii()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into binary polynomial format </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of binary polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00101">101</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a8460cd27ad4562f560bb304609a3e06d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t** base64_to_poly_arr </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an base64 encoded string to an array of polyomials with coefficients which are expected to be in the range [0, q-1]. The chars will be converted (after decoding) to their integer representation and directly put into the coefficients.</p>
<p>If the last polynomial is of degree less than N -1, then it will be filled with trailing q's for later user in <a class="el" href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">poly_arr_to_base64()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into polynomial format, which is of type string, so we can iterate safely over it (the string might have null-bytes in the middle of it) </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00146">146</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a2d2f760b6a98bd87248c1d3e120a665b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static char * get_int_to_bin_str </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an integer to it's binary representation as a string and return it.</p>
<p>As in: 90 =&gt; "10110101"</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>the integer to convert </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the binary representation as a newly allocated string </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00062">62</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,9 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_ascii_poly.c" name="/home/travis/build/hasufell/pqc/src/ntru_ascii_poly.c">
<area shape="rect" id="node3" href="$ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="276,117,396,147"/>
<area shape="rect" id="node5" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="70,195,182,224"/>
<area shape="rect" id="node9" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="291,195,384,224"/>
<area shape="rect" id="node12" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="526,195,630,224"/>
<area shape="rect" id="node21" href="$ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="30,117,120,147"/>
<area shape="rect" id="node25" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="660,117,746,147"/>
<area shape="rect" id="node27" href="$ntru__err_8h.html" title="error handling " alt="" coords="947,195,1024,224"/>
</map>

View File

@ -1 +0,0 @@
4b96241be94029950c1b05fd20de29d0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

View File

@ -1,312 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_ascii_poly.c Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_ascii_poly.c</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__ascii__poly_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__common_8h.html">ntru_common.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__mem_8h.html">ntru_mem.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">get_int_to_bin_str</a>(uint8_t value);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b"> 62</a></span>&#160;<a class="code" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">get_int_to_bin_str</a>(uint8_t value)</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">int</span> i;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> bin_string_size = <a class="code" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a> + 1;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">char</span> *bin_string = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(*bin_string) *</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; (bin_string_size)); <span class="comment">/* account for trailing null-byte */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* terminate properly */</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; bin_string[bin_string_size - 1] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">for</span> (i = <a class="code" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a> - 1; i &gt;= 0; --i, value &gt;&gt;= 1)</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; bin_string[i] = (value &amp; 1) + <span class="charliteral">&#39;0&#39;</span>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> bin_string;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;}</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;fmpz_poly_t *</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9"> 81</a></span>&#160;<a class="code" href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; uint32_t i = 0;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; fmpz_poly_t *new_poly = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(*new_poly));</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; fmpz_poly_init(*new_poly);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">while</span> (to_poly[i] &amp;&amp; i &lt; params-&gt;N) {</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; fmpz_poly_set_coeff_si(*new_poly,</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; i,</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; (to_poly[i] == <span class="charliteral">&#39;0&#39;</span>) ? -1 : 1);</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; i++;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> new_poly;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;}</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;fmpz_poly_t **</div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805"> 101</a></span>&#160;<a class="code" href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a>(<span class="keyword">const</span> <span class="keywordtype">string</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">char</span> *cur = to_poly-&gt;<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a>;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">char</span> *out = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<a class="code" href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec">CHAR_SIZE</a> * (to_poly-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a> * <a class="code" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a> + 1));</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; uint32_t polyc = 0;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">size_t</span> out_len = 0;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; fmpz_poly_t **poly_array;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">for</span> (uint32_t i = 0; i &lt; to_poly-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>; i++) {</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">char</span> *tmp_string = <a class="code" href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">get_int_to_bin_str</a>((<span class="keywordtype">int</span>)(*cur));</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; memcpy(out + out_len, tmp_string, <a class="code" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a>);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; out_len += <a class="code" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a>;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; cur++;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; free(tmp_string);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; out[out_len] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; poly_array = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(**poly_array) *</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; (strlen(out) / params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a> + 1));</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">for</span> (uint32_t i = 0; i &lt; out_len; i += params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>) {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">char</span> chunk[params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a> + 1];</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">size_t</span> real_chunk_size;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; real_chunk_size =</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; (out_len - i &gt; params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>) ? params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a> : out_len - i;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; memcpy(chunk, out + i, real_chunk_size);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; chunk[real_chunk_size] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; poly_array[polyc] = <a class="code" href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a>(chunk, params);</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; polyc++;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; }</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; free(out);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; poly_array[polyc] = NULL;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> poly_array;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;}</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;fmpz_poly_t **</div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d"> 146</a></span>&#160;<a class="code" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a>(<span class="keyword">const</span> <span class="keywordtype">string</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; uint32_t i = 0,</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; polyc = 0;</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; gsize out_len;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; guchar *base64_decoded = NULL,</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; *base_tmp = NULL;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordtype">string</span> *new_string = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(*new_string));</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; fmpz_poly_t **poly_array;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordtype">char</span> *tmp = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">char</span>) * (to_poly-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a> + 1));</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="comment">/* g_base64_decode() needs it null-terminated */</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; memcpy(tmp, to_poly-&gt;<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a>, to_poly-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>);</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; tmp[to_poly-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; base_tmp = g_base64_decode((<span class="keyword">const</span> gchar *)tmp, &amp;out_len);</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">/* g_base64_decode() needs it null-terminated */</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="ntru__mem_8h.html#a718b6446905826d711cb7ef00808bb4e">REALLOC</a>(tmp, <span class="keyword">sizeof</span>(<span class="keywordtype">char</span>) * (out_len + 1));</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; memcpy(tmp, base_tmp, out_len);</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; tmp[out_len] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; base64_decoded = g_base64_decode((<span class="keyword">const</span> gchar *)tmp, &amp;out_len);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; new_string-&gt;<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a> = (<span class="keywordtype">char</span> *)base64_decoded;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; new_string-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a> = (<span class="keywordtype">unsigned</span> long)(out_len);</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; poly_array = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(**poly_array) *</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; (new_string-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a> / params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>));</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">while</span> (i &lt; new_string-&gt;len) {</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; uint32_t j = 0;</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; fmpz_poly_t *new_poly = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(*new_poly));</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; fmpz_poly_init(*new_poly);</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">while</span> (j &lt; params-&gt;N) {</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; fmpz_poly_set_coeff_si(*new_poly,</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; j,</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; (uint8_t)(base64_decoded[i]));</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; j++;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; i++;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">/* fill the last poly with q (which is a non-standard</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> * coefficient) */</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">for</span> (uint32_t k = j; k &lt; params-&gt;<a class="code" href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">N</a>; k++) {</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; fmpz_poly_set_coeff_si(*new_poly,</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; k,</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; poly_array[polyc] = new_poly;</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; polyc++;</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; poly_array[polyc] = NULL;</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a>(new_string);</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; free(base_tmp);</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; free(tmp);</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span> poly_array;</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;}</div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a3237071bca2489c3b2efd46e674e0805"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** ascii_to_bin_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00101">ntru_ascii_poly.c:101</a></div></div>
<div class="ttc" id="ntru__common_8h_html_a8d370c21bcf662e586397e764aba95e1"><div class="ttname"><a href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a></div><div class="ttdeci">#define ASCII_BITS</div><div class="ttdef"><b>Definition:</b> <a href="ntru__common_8h_source.html#l00038">ntru_common.h:38</a></div></div>
<div class="ttc" id="ntru__string_8c_html_ac1b5f66fbbbdfc7901357ddcfec52e5a"><div class="ttname"><a href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a></div><div class="ttdeci">void string_delete(string *del_string)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8c_source.html#l00047">ntru_string.c:47</a></div></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00053">ntru_string.h:53</a></div></div>
<div class="ttc" id="structntru__params_html_afb8425ee3db2b917b3c4e8d9b75bd3ff"><div class="ttname"><a href="structntru__params.html#afb8425ee3db2b917b3c4e8d9b75bd3ff">ntru_params::N</a></div><div class="ttdeci">uint32_t N</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00048">ntru_params.h:48</a></div></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a8460cd27ad4562f560bb304609a3e06d"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** base64_to_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00146">ntru_ascii_poly.c:146</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__mem_8h_html"><div class="ttname"><a href="ntru__mem_8h.html">ntru_mem.h</a></div><div class="ttdoc">header for ntru_mem.c </div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__mem_8h_html_a718b6446905826d711cb7ef00808bb4e"><div class="ttname"><a href="ntru__mem_8h.html#a718b6446905826d711cb7ef00808bb4e">REALLOC</a></div><div class="ttdeci">#define REALLOC(ptr, size)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__mem_8h_source.html#l00038">ntru_mem.h:38</a></div></div>
<div class="ttc" id="ntru__common_8h_html"><div class="ttname"><a href="ntru__common_8h.html">ntru_common.h</a></div><div class="ttdoc">common macros/functions </div></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a2d2f760b6a98bd87248c1d3e120a665b"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a2d2f760b6a98bd87248c1d3e120a665b">get_int_to_bin_str</a></div><div class="ttdeci">static char * get_int_to_bin_str(uint8_t value)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00062">ntru_ascii_poly.c:62</a></div></div>
<div class="ttc" id="ntru__mem_8c_html_a020790bf8b201fde92395cf975c0c691"><div class="ttname"><a href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a></div><div class="ttdeci">void * ntru_malloc(size_t size)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__mem_8c_source.html#l00038">ntru_mem.c:38</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00052">ntru_params.h:52</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__common_8h_html_a22c7f61c2f0fa6b1943548e838055cec"><div class="ttname"><a href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec">CHAR_SIZE</a></div><div class="ttdeci">#define CHAR_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="ntru__common_8h_source.html#l00037">ntru_common.h:37</a></div></div>
<div class="ttc" id="structstring_html_afd608f62303958cea6f1f7afdec1e282"><div class="ttname"><a href="structstring.html#afd608f62303958cea6f1f7afdec1e282">string::ptr</a></div><div class="ttdeci">char * ptr</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00049">ntru_string.h:49</a></div></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><div class="ttname"><a href="ntru__ascii__poly_8c.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a></div><div class="ttdeci">fmpz_poly_t * ascii_bin_to_bin_poly(const char *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00081">ntru_ascii_poly.c:81</a></div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html"><div class="ttname"><a href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a></div><div class="ttdoc">header for ntru_ascii_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,252 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_ascii_poly.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_ascii_poly.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>header for <a class="el" href="ntru__ascii__poly_8c.html" title="ascii to polynomials ">ntru_ascii_poly.c</a>
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_ascii_poly.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__ascii__poly_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__ascii__poly_8h">
<area shape="rect" id="node3" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/><area shape="rect" id="node7" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="141,117,235,147"/><area shape="rect" id="node10" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="259,117,363,147"/></map>
</div>
</div>
<p><a href="ntru__ascii__poly_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a> (const char *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3237071bca2489c3b2efd46e674e0805"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a> (const <a class="el" href="structstring.html">string</a> *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a3237071bca2489c3b2efd46e674e0805"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8460cd27ad4562f560bb304609a3e06d"><td class="memItemLeft" align="right" valign="top">fmpz_poly_t **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a> (const <a class="el" href="structstring.html">string</a> *to_poly, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a8460cd27ad4562f560bb304609a3e06d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>header for <a class="el" href="ntru__ascii__poly_8c.html" title="ascii to polynomials ">ntru_ascii_poly.c</a> </p>
<p>Header for the internal API of <a class="el" href="ntru__ascii__poly_8c.html" title="ascii to polynomials ">ntru_ascii_poly.c</a>. </p>
<p>Definition in file <a class="el" href="ntru__ascii__poly_8h_source.html">ntru_ascii_poly.h</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="aa5d0d4abdb2ce837a0a3b6e478c8f1a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t* ascii_bin_to_bin_poly </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a "binary" ascii string to a binary polyomial. The ascii string will be converted to a binary representation and the following mapping will apply between binary -&gt; poly:</p>
<p>1 =&gt; 1</p>
<p>0 =&gt; -1</p>
<p>If the polynomial is of degree less than N -1, then it will be filled with trailing 2's for later use in <a class="el" href="ntru__poly__ascii_8c.html#a0d86ab2dede39b332d4149e16b2046b8">bin_poly_to_ascii()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into binary polynomial format </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of binary polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00081">81</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a3237071bca2489c3b2efd46e674e0805"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t** ascii_to_bin_poly_arr </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an ascii string to an array of binary polyomials. The ascii string will be converted to a binary representation and the following mapping will apply between binary -&gt; poly:</p>
<p>1 =&gt; 1</p>
<p>0 =&gt; -1</p>
<p>If the last polynomial is of degree less than N -1, then it will be filled with trailing 2's for later use in <a class="el" href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">bin_poly_arr_to_ascii()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into binary polynomial format </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of binary polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00101">101</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
<a class="anchor" id="a8460cd27ad4562f560bb304609a3e06d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fmpz_poly_t** base64_to_poly_arr </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>to_poly</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an base64 encoded string to an array of polyomials with coefficients which are expected to be in the range [0, q-1]. The chars will be converted (after decoding) to their integer representation and directly put into the coefficients.</p>
<p>If the last polynomial is of degree less than N -1, then it will be filled with trailing q's for later user in <a class="el" href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">poly_arr_to_base64()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">to_poly</td><td>the string to get into polynomial format, which is of type string, so we can iterate safely over it (the string might have null-bytes in the middle of it) </td></tr>
<tr><td class="paramname">params</td><td>the NTRUEncrypt context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>newly allocated array of polynomials </dd></dl>
<p>Definition at line <a class="el" href="ntru__ascii__poly_8c_source.html#l00146">146</a> of file <a class="el" href="ntru__ascii__poly_8c_source.html">ntru_ascii_poly.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,5 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_ascii_poly.h" name="/home/travis/build/hasufell/pqc/src/ntru_ascii_poly.h">
<area shape="rect" id="node3" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/>
<area shape="rect" id="node7" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="141,117,235,147"/>
<area shape="rect" id="node10" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="259,117,363,147"/>
</map>

View File

@ -1 +0,0 @@
81e7fc7cf2132dda2768b24004a75bbb

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1,150 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_ascii_poly.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_ascii_poly.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__ascii__poly_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef NTRU_ASCII_POLY_H_</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define NTRU_ASCII_POLY_H_</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__common_8h.html">ntru_common.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;fmpz_poly_t *</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<a class="code" href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;fmpz_poly_t **</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<a class="code" href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a>(<span class="keyword">const</span> <span class="keywordtype">string</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;fmpz_poly_t **</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<a class="code" href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a>(<span class="keyword">const</span> <span class="keywordtype">string</span> *to_poly, <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_ASCII_POLY_H_ */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru__ascii__poly_8h_html_a3237071bca2489c3b2efd46e674e0805"><div class="ttname"><a href="ntru__ascii__poly_8h.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** ascii_to_bin_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00101">ntru_ascii_poly.c:101</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__common_8h_html"><div class="ttname"><a href="ntru__common_8h.html">ntru_common.h</a></div><div class="ttdoc">common macros/functions </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html_a8460cd27ad4562f560bb304609a3e06d"><div class="ttname"><a href="ntru__ascii__poly_8h.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** base64_to_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00146">ntru_ascii_poly.c:146</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html_aa5d0d4abdb2ce837a0a3b6e478c8f1a9"><div class="ttname"><a href="ntru__ascii__poly_8h.html#aa5d0d4abdb2ce837a0a3b6e478c8f1a9">ascii_bin_to_bin_poly</a></div><div class="ttdeci">fmpz_poly_t * ascii_bin_to_bin_poly(const char *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00081">ntru_ascii_poly.c:81</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,156 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_common.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">ntru_common.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>common macros/functions
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_common.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__common_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__common_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__common_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__common_8h">
</map>
</div>
</div>
<p><a href="ntru__common_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:a22c7f61c2f0fa6b1943548e838055cec"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec">CHAR_SIZE</a>&#160;&#160;&#160;sizeof(char)</td></tr>
<tr class="separator:a22c7f61c2f0fa6b1943548e838055cec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d370c21bcf662e586397e764aba95e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1">ASCII_BITS</a>&#160;&#160;&#160;8</td></tr>
<tr class="separator:a8d370c21bcf662e586397e764aba95e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>common macros/functions </p>
<p>This file holds common macros and functions shared throughout the whole codebase without any particular purpose. </p>
<p>Definition in file <a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a8d370c21bcf662e586397e764aba95e1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define ASCII_BITS&#160;&#160;&#160;8</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="ntru__common_8h_source.html#l00038">38</a> of file <a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>.</p>
</div>
</div>
<a class="anchor" id="a22c7f61c2f0fa6b1943548e838055cec"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CHAR_SIZE&#160;&#160;&#160;sizeof(char)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="ntru__common_8h_source.html#l00037">37</a> of file <a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,2 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_common.h" name="/home/travis/build/hasufell/pqc/src/ntru_common.h">
</map>

View File

@ -1 +0,0 @@
263919482a59e32c059432052bc45afa

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

View File

@ -1,132 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_common.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_common.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__common_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#ifndef NTRU_COMMON_H</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#define NTRU_COMMON_H</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="ntru__common_8h.html#a22c7f61c2f0fa6b1943548e838055cec"> 37</a></span>&#160;<span class="preprocessor">#define CHAR_SIZE sizeof(char)</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="ntru__common_8h.html#a8d370c21bcf662e586397e764aba95e1"> 38</a></span>&#160;<span class="preprocessor">#define ASCII_BITS 8</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_COMMON_H */</span><span class="preprocessor"></span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,245 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_decrypt.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_decrypt.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>NTRU decryption.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__ascii__poly_8h_source.html">ntru_ascii_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__decrypt_8h_source.html">ntru_decrypt.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly__ascii_8h_source.html">ntru_poly_ascii.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;stdbool.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_decrypt.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__decrypt_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8c">
<area shape="rect" id="node3" href="ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="113,117,233,147"/><area shape="rect" id="node9" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="327,195,420,224"/><area shape="rect" id="node12" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="321,272,425,301"/><area shape="rect" id="node20" href="ntru__decrypt_8h.html" title="header for ntru_decrypt.c " alt="" coords="503,117,607,147"/><area shape="rect" id="node23" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="681,195,767,224"/><area shape="rect" id="node40" href="ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="257,117,377,147"/><area shape="rect" id="node5" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="191,195,303,224"/><area shape="rect" id="node25" href="ntru__err_8h.html" title="error handling " alt="" coords="588,272,665,301"/></map>
</div>
</div>
<p><a href="ntru__decrypt_8c_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a41c72f59e37a3c6ef6790eb909555d76"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt_poly</a> (const fmpz_poly_t encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, fmpz_poly_t out_bin, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a41c72f59e37a3c6ef6790eb909555d76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9cc61eec0c119e48762f6078a14527b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8c.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a> (const <a class="el" href="structstring.html">string</a> *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:aa9cc61eec0c119e48762f6078a14527b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>NTRU decryption. </p>
<p>This file handles the NTRU decryption algorithm. </p>
<p>Definition in file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a41c72f59e37a3c6ef6790eb909555d76"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_decrypt_poly </td>
<td>(</td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>encr_msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>out_tern</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decryption of the given Polynom with the private key, its inverse and the fitting <a class="el" href="structntru__params.html">ntru_params</a></p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>encrypted polynom with maximum length of N from the given context </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">out_tern</td><td>the resulting ternary polynom [out] </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__decrypt_8c_source.html#l00046">46</a> of file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
</div>
</div>
<a class="anchor" id="aa9cc61eec0c119e48762f6078a14527b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* ntru_decrypt_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>encr_msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decryption of a given encrypted string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>the encrypted message in the form of a string </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the decrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__decrypt_8c_source.html#l00092">92</a> of file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,10 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_decrypt.c" name="/home/travis/build/hasufell/pqc/src/ntru_decrypt.c">
<area shape="rect" id="node3" href="$ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="113,117,233,147"/>
<area shape="rect" id="node9" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="327,195,420,224"/>
<area shape="rect" id="node12" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="321,272,425,301"/>
<area shape="rect" id="node20" href="$ntru__decrypt_8h.html" title="header for ntru_decrypt.c " alt="" coords="503,117,607,147"/>
<area shape="rect" id="node23" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="681,195,767,224"/>
<area shape="rect" id="node40" href="$ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="257,117,377,147"/>
<area shape="rect" id="node5" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="191,195,303,224"/>
<area shape="rect" id="node25" href="$ntru__err_8h.html" title="error handling " alt="" coords="588,272,665,301"/>
</map>

View File

@ -1 +0,0 @@
fd7a83e2e136c4b6ede8e55ee7aa3b6d

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

View File

@ -1,234 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_decrypt.c Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_decrypt.c</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__decrypt_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__decrypt_8h.html">ntru_decrypt.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31"> 46</a></span>&#160;<a class="code" href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt_poly</a>(</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> fmpz_poly_t encr_msg,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key,</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key_inv,</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; fmpz_poly_t out_bin,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; fmpz_poly_t a,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; priv_key_tmp,</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; priv_key_inv_tmp,</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; encr_msg_tmp;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (!encr_msg || !priv_key || !priv_key_inv || !out_bin || !params)</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Unexpected NULL parameters&quot;</span>);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; fmpz_poly_init(a);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; fmpz_poly_zero(a);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> * make sure all are shifted to</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> * [-q/2, q/2]</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; fmpz_poly_init(priv_key_tmp);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; fmpz_poly_init(priv_key_inv_tmp);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; fmpz_poly_init(encr_msg_tmp);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; fmpz_poly_set(priv_key_tmp, priv_key);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; fmpz_poly_set(priv_key_inv_tmp, priv_key_inv);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; fmpz_poly_set(encr_msg_tmp, encr_msg);</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(priv_key_tmp, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(priv_key_inv_tmp, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(encr_msg_tmp, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a>(priv_key_tmp, encr_msg_tmp, a, params, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(a, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a>(a, priv_key_inv_tmp, out_bin, params, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(out_bin, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; fmpz_poly_clear(a);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; fmpz_poly_clear(priv_key_tmp);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; fmpz_poly_clear(priv_key_inv_tmp);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; fmpz_poly_clear(encr_msg_tmp);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b"> 92</a></span>&#160;<a class="code" href="ntru__decrypt_8c.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a>(</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> <span class="keywordtype">string</span> *encr_msg,</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key,</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key_inv,</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;{</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; uint32_t i = 0;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">string</span> *decr_msg;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; fmpz_poly_t **poly_array;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (!encr_msg || !encr_msg-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>)</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Unexpected NULL parameters&quot;</span>);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; poly_array = <a class="code" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a>(encr_msg, params);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">while</span> (*poly_array[i]) {</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt_poly</a>(*poly_array[i],</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; priv_key,</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; priv_key_inv,</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; *poly_array[i],</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; params);</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; i++;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; decr_msg = <a class="code" href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">bin_poly_arr_to_ascii</a>((<span class="keyword">const</span> fmpz_poly_t **)poly_array,</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; i, params);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a>(poly_array);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> decr_msg;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;}</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00053">ntru_string.h:53</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_a7c4f5e96355518dc97a23da8f34b661a"><div class="ttname"><a href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a></div><div class="ttdeci">void fmpz_poly_mod(fmpz_poly_t a, const uint32_t mod)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00182">ntru_poly.c:182</a></div></div>
<div class="ttc" id="ntru__err_8h_html_a5d4dd1c1539c408c0dcd915750e8f224"><div class="ttname"><a href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a></div><div class="ttdeci">#define NTRU_ABORT_DEBUG(...)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__err_8h_source.html#l00039">ntru_err.h:39</a></div></div>
<div class="ttc" id="structntru__params_html_a41b368825e1eb126604e13e8f549ec8f"><div class="ttname"><a href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">ntru_params::p</a></div><div class="ttdeci">uint32_t p</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00056">ntru_params.h:56</a></div></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a8460cd27ad4562f560bb304609a3e06d"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** base64_to_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00146">ntru_ascii_poly.c:146</a></div></div>
<div class="ttc" id="ntru__decrypt_8h_html"><div class="ttname"><a href="ntru__decrypt_8h.html">ntru_decrypt.h</a></div><div class="ttdoc">header for ntru_decrypt.c </div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__poly__ascii_8h_html"><div class="ttname"><a href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a></div><div class="ttdoc">header for ntru_poly_ascii.c </div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__poly_8c_html_ae96f479ddd97af709a0ed50817fd3fb3"><div class="ttname"><a href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a></div><div class="ttdeci">void poly_starmultiply(const fmpz_poly_t a, const fmpz_poly_t b, fmpz_poly_t c, const ntru_params *params, uint32_t modulus)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00239">ntru_poly.c:239</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_a3f53c63383ff301b20dcede0783869a7"><div class="ttname"><a href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a></div><div class="ttdeci">void poly_delete_array(fmpz_poly_t **poly_array)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00131">ntru_poly.c:131</a></div></div>
<div class="ttc" id="ntru__poly__ascii_8c_html_ab9464c96c3ebec6ee716c604fdc4ad21"><div class="ttname"><a href="ntru__poly__ascii_8c.html#ab9464c96c3ebec6ee716c604fdc4ad21">bin_poly_arr_to_ascii</a></div><div class="ttdeci">string * bin_poly_arr_to_ascii(const fmpz_poly_t **bin_poly_arr, const uint32_t poly_c, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly__ascii_8c_source.html#l00143">ntru_poly_ascii.c:143</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00052">ntru_params.h:52</a></div></div>
<div class="ttc" id="ntru__decrypt_8c_html_a41c72f59e37a3c6ef6790eb909555d76"><div class="ttname"><a href="ntru__decrypt_8c.html#a41c72f59e37a3c6ef6790eb909555d76">ntru_decrypt_poly</a></div><div class="ttdeci">void ntru_decrypt_poly(const fmpz_poly_t encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, fmpz_poly_t out_bin, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__decrypt_8c_source.html#l00046">ntru_decrypt.c:46</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__decrypt_8c_html_aa9cc61eec0c119e48762f6078a14527b"><div class="ttname"><a href="ntru__decrypt_8c.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a></div><div class="ttdeci">string * ntru_decrypt_string(const string *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__decrypt_8c_source.html#l00092">ntru_decrypt.c:92</a></div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html"><div class="ttname"><a href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a></div><div class="ttdoc">header for ntru_ascii_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,240 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_decrypt.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_decrypt.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>header for <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a>
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_decrypt.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__decrypt_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__decrypt_8h">
<area shape="rect" id="node3" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,195,109,224"/><area shape="rect" id="node7" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="296,117,381,147"/><area shape="rect" id="node21" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="443,117,536,147"/><area shape="rect" id="node9" href="ntru__err_8h.html" title="error handling " alt="" coords="184,195,261,224"/></map>
</div>
</div>
<p><a href="ntru__decrypt_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a8108219b815b18d63672bbc45e76ca31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31">ntru_decrypt_poly</a> (const fmpz_poly_t encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, fmpz_poly_t out_tern, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a8108219b815b18d63672bbc45e76ca31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9cc61eec0c119e48762f6078a14527b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a> (const <a class="el" href="structstring.html">string</a> *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:aa9cc61eec0c119e48762f6078a14527b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>header for <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a> </p>
<p>Header for the external API of <a class="el" href="ntru__decrypt_8c.html" title="NTRU decryption. ">ntru_decrypt.c</a>. </p>
<p>Definition in file <a class="el" href="ntru__decrypt_8h_source.html">ntru_decrypt.h</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a8108219b815b18d63672bbc45e76ca31"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_decrypt_poly </td>
<td>(</td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>encr_msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>out_tern</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decryption of the given Polynom with the private key, its inverse and the fitting <a class="el" href="structntru__params.html">ntru_params</a></p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>encrypted polynom with maximum length of N from the given context </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">out_tern</td><td>the resulting ternary polynom [out] </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__decrypt_8c_source.html#l00046">46</a> of file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
</div>
</div>
<a class="anchor" id="aa9cc61eec0c119e48762f6078a14527b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* ntru_decrypt_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>encr_msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_key_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decryption of a given encrypted string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">encr_msg</td><td>the encrypted message in the form of a string </td></tr>
<tr><td class="paramname">priv_key</td><td>the polynom containing the private key to decrypt the message </td></tr>
<tr><td class="paramname">priv_key_inv</td><td>the inverse polynome to the private key </td></tr>
<tr><td class="paramname">params</td><td>the <a class="el" href="structntru__params.html">ntru_params</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the decrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__decrypt_8c_source.html#l00092">92</a> of file <a class="el" href="ntru__decrypt_8c_source.html">ntru_decrypt.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,6 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_decrypt.h" name="/home/travis/build/hasufell/pqc/src/ntru_decrypt.h">
<area shape="rect" id="node3" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,195,109,224"/>
<area shape="rect" id="node7" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="296,117,381,147"/>
<area shape="rect" id="node21" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="443,117,536,147"/>
<area shape="rect" id="node9" href="$ntru__err_8h.html" title="error handling " alt="" coords="184,195,261,224"/>
</map>

View File

@ -1 +0,0 @@
8fb618f6c80c80fe82e657fdec2bcc8e

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View File

@ -1,154 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_decrypt.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_decrypt.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__decrypt_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef NTRU_DECRYPT_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define NTRU_DECRYPT_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31">ntru_decrypt_poly</a>(</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">const</span> fmpz_poly_t encr_msg,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key,</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key_inv,</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; fmpz_poly_t out_tern,</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<a class="code" href="ntru__decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a>(</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">const</span> <span class="keywordtype">string</span> *encr_msg,</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">const</span> fmpz_poly_t priv_key_inv,</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_DECRYPT */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru__decrypt_8h_html_a8108219b815b18d63672bbc45e76ca31"><div class="ttname"><a href="ntru__decrypt_8h.html#a8108219b815b18d63672bbc45e76ca31">ntru_decrypt_poly</a></div><div class="ttdeci">void ntru_decrypt_poly(const fmpz_poly_t encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, fmpz_poly_t out_tern, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__decrypt_8c_source.html#l00046">ntru_decrypt.c:46</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__decrypt_8h_html_aa9cc61eec0c119e48762f6078a14527b"><div class="ttname"><a href="ntru__decrypt_8h.html#aa9cc61eec0c119e48762f6078a14527b">ntru_decrypt_string</a></div><div class="ttdeci">string * ntru_decrypt_string(const string *encr_msg, const fmpz_poly_t priv_key, const fmpz_poly_t priv_key_inv, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__decrypt_8c_source.html#l00092">ntru_decrypt.c:92</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,250 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_encrypt.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_encrypt.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>NTRU encryption.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__ascii__poly_8h_source.html">ntru_ascii_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__encrypt_8h_source.html">ntru_encrypt.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__mem_8h_source.html">ntru_mem.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly__ascii_8h_source.html">ntru_poly_ascii.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_encrypt.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__encrypt_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8c">
<area shape="rect" id="node3" href="ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="286,117,406,147"/><area shape="rect" id="node9" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="401,195,494,224"/><area shape="rect" id="node12" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="497,272,601,301"/><area shape="rect" id="node20" href="ntru__encrypt_8h.html" title="header for encrypt.c " alt="" coords="482,117,586,147"/><area shape="rect" id="node23" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="785,195,870,224"/><area shape="rect" id="node38" href="ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="620,195,710,224"/><area shape="rect" id="node43" href="ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="81,117,201,147"/><area shape="rect" id="node5" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="78,195,190,224"/><area shape="rect" id="node25" href="ntru__err_8h.html" title="error handling " alt="" coords="713,272,790,301"/></map>
</div>
</div>
<p><a href="ntru__encrypt_8c_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a0156453c7cab7cf3da259beb1daf914b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt_poly</a> (const fmpz_poly_t msg_bin, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, fmpz_poly_t out, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a0156453c7cab7cf3da259beb1daf914b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8c.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a> (const <a class="el" href="structstring.html">string</a> *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>NTRU encryption. </p>
<p>This file handles the NTRU encryption algorithm. </p>
<p>Definition in file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a0156453c7cab7cf3da259beb1daf914b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_encrypt_poly </td>
<td>(</td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>msg_tern</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>rnd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>out</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>encrypt the msg, using the math: e = (h r) + m (mod q)</p>
<p>e = the encrypted poly</p>
<p>h = the public key</p>
<p>r = the random poly</p>
<p>m = the message poly</p>
<p>q = large mod</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">msg_tern</td><td>the message to encrypt, in ternary format </td></tr>
<tr><td class="paramname">pub_key</td><td>the public key </td></tr>
<tr><td class="paramname">rnd</td><td>the random poly (should have relatively small coefficients, but not restricted to {-1, 0, 1}) </td></tr>
<tr><td class="paramname">out</td><td>the output poly which is in the range {0, q-1} (not ternary!) [out] </td></tr>
<tr><td class="paramname">params</td><td><a class="el" href="structntru__params.html">ntru_params</a> the ntru context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__encrypt_8c_source.html#l00046">46</a> of file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
</div>
</div>
<a class="anchor" id="a0bb47c0fa0dd4a4cfa0c0f7a722fd554"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* ntru_encrypt_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>rnd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Encrypt a message in the form of a null-terminated char array and return a string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">msg</td><td>the message </td></tr>
<tr><td class="paramname">pub_key</td><td>the public key </td></tr>
<tr><td class="paramname">rnd</td><td>the random poly (should have relatively small coefficients, but not restricted to {-1, 0, 1}) </td></tr>
<tr><td class="paramname">params</td><td><a class="el" href="structntru__params.html">ntru_params</a> the ntru context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the newly allocated encrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__encrypt_8c_source.html#l00074">74</a> of file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,11 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_encrypt.c" name="/home/travis/build/hasufell/pqc/src/ntru_encrypt.c">
<area shape="rect" id="node3" href="$ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="286,117,406,147"/>
<area shape="rect" id="node9" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="401,195,494,224"/>
<area shape="rect" id="node12" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="497,272,601,301"/>
<area shape="rect" id="node20" href="$ntru__encrypt_8h.html" title="header for encrypt.c " alt="" coords="482,117,586,147"/>
<area shape="rect" id="node23" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="785,195,870,224"/>
<area shape="rect" id="node38" href="$ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="620,195,710,224"/>
<area shape="rect" id="node43" href="$ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="81,117,201,147"/>
<area shape="rect" id="node5" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="78,195,190,224"/>
<area shape="rect" id="node25" href="$ntru__err_8h.html" title="error handling " alt="" coords="713,272,790,301"/>
</map>

View File

@ -1 +0,0 @@
7c1c6abc6b2d58a64859dd38bfb8acdb

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

View File

@ -1,216 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_encrypt.c Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_encrypt.c</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__encrypt_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__encrypt_8h.html">ntru_encrypt.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__mem_8h.html">ntru_mem.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68"> 46</a></span>&#160;<a class="code" href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt_poly</a>(</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> fmpz_poly_t msg_bin,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">const</span> fmpz_poly_t pub_key,</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">const</span> fmpz_poly_t rnd,</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; fmpz_poly_t out,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; fmpz_poly_t tmp_poly_msg;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">if</span> (!msg_bin || !pub_key || !rnd || !out || !params)</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Unexpected NULL parameters&quot;</span>);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">/* allow aliasing */</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; fmpz_poly_init(tmp_poly_msg);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; fmpz_poly_set(tmp_poly_msg, msg_bin);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; fmpz_poly_zero(out);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a>(pub_key, rnd, out, params, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; fmpz_poly_add(out, out, tmp_poly_msg);</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">fmpz_poly_mod_unsigned</a>(out, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; fmpz_poly_clear(tmp_poly_msg);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554"> 74</a></span>&#160;<a class="code" href="ntru__encrypt_8c.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a>(</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">const</span> <span class="keywordtype">string</span> *msg,</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">const</span> fmpz_poly_t pub_key,</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">const</span> fmpz_poly_t rnd,</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;{</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; uint32_t i = 0;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">string</span> *enc_msg;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; fmpz_poly_t **poly_array;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (!msg || !msg-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>)</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Unexpected NULL parameters&quot;</span>);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; poly_array = <a class="code" href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a>(msg, params);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">while</span> (*poly_array[i]) {</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt_poly</a>(*poly_array[i],</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; pub_key,</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; rnd,</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; *poly_array[i],</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; params);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; i++;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; enc_msg = <a class="code" href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">poly_arr_to_base64</a>((<span class="keyword">const</span> fmpz_poly_t **)poly_array,</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; i, params);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a>(poly_array);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> enc_msg;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;}</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a3237071bca2489c3b2efd46e674e0805"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a3237071bca2489c3b2efd46e674e0805">ascii_to_bin_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** ascii_to_bin_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00101">ntru_ascii_poly.c:101</a></div></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00053">ntru_string.h:53</a></div></div>
<div class="ttc" id="ntru__encrypt_8c_html_a0156453c7cab7cf3da259beb1daf914b"><div class="ttname"><a href="ntru__encrypt_8c.html#a0156453c7cab7cf3da259beb1daf914b">ntru_encrypt_poly</a></div><div class="ttdeci">void ntru_encrypt_poly(const fmpz_poly_t msg_bin, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, fmpz_poly_t out, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__encrypt_8c_source.html#l00046">ntru_encrypt.c:46</a></div></div>
<div class="ttc" id="ntru__poly__ascii_8c_html_a0dc14698073df2e46e6540cbff870fc7"><div class="ttname"><a href="ntru__poly__ascii_8c.html#a0dc14698073df2e46e6540cbff870fc7">poly_arr_to_base64</a></div><div class="ttdeci">string * poly_arr_to_base64(const fmpz_poly_t **poly_array, const uint32_t poly_c, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly__ascii_8c_source.html#l00264">ntru_poly_ascii.c:264</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_ae7d0d8364dba689df3fb4904610634cc"><div class="ttname"><a href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">fmpz_poly_mod_unsigned</a></div><div class="ttdeci">void fmpz_poly_mod_unsigned(fmpz_poly_t a, const uint32_t mod)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00166">ntru_poly.c:166</a></div></div>
<div class="ttc" id="ntru__err_8h_html_a5d4dd1c1539c408c0dcd915750e8f224"><div class="ttname"><a href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a></div><div class="ttdeci">#define NTRU_ABORT_DEBUG(...)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__err_8h_source.html#l00039">ntru_err.h:39</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__encrypt_8h_html"><div class="ttname"><a href="ntru__encrypt_8h.html">ntru_encrypt.h</a></div><div class="ttdoc">header for encrypt.c </div></div>
<div class="ttc" id="ntru__mem_8h_html"><div class="ttname"><a href="ntru__mem_8h.html">ntru_mem.h</a></div><div class="ttdoc">header for ntru_mem.c </div></div>
<div class="ttc" id="ntru__poly__ascii_8h_html"><div class="ttname"><a href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a></div><div class="ttdoc">header for ntru_poly_ascii.c </div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__encrypt_8c_html_a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><div class="ttname"><a href="ntru__encrypt_8c.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a></div><div class="ttdeci">string * ntru_encrypt_string(const string *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__encrypt_8c_source.html#l00074">ntru_encrypt.c:74</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_ae96f479ddd97af709a0ed50817fd3fb3"><div class="ttname"><a href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a></div><div class="ttdeci">void poly_starmultiply(const fmpz_poly_t a, const fmpz_poly_t b, fmpz_poly_t c, const ntru_params *params, uint32_t modulus)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00239">ntru_poly.c:239</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_a3f53c63383ff301b20dcede0783869a7"><div class="ttname"><a href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a></div><div class="ttdeci">void poly_delete_array(fmpz_poly_t **poly_array)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00131">ntru_poly.c:131</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00052">ntru_params.h:52</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html"><div class="ttname"><a href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a></div><div class="ttdoc">header for ntru_ascii_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,245 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_encrypt.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_encrypt.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>header for encrypt.c
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_encrypt.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__encrypt_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__encrypt_8h">
<area shape="rect" id="node3" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,195,109,224"/><area shape="rect" id="node7" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="296,117,381,147"/><area shape="rect" id="node21" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="443,117,536,147"/><area shape="rect" id="node9" href="ntru__err_8h.html" title="error handling " alt="" coords="184,195,261,224"/></map>
</div>
</div>
<p><a href="ntru__encrypt_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a9063450af4b523d202c7628dbac70e68"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68">ntru_encrypt_poly</a> (const fmpz_poly_t msg_tern, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, fmpz_poly_t out, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a9063450af4b523d202c7628dbac70e68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a> (const <a class="el" href="structstring.html">string</a> *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>header for encrypt.c </p>
<p>Header for the internal API of <a class="el" href="ntru__encrypt_8c.html" title="NTRU encryption. ">ntru_encrypt.c</a>. </p>
<p>Definition in file <a class="el" href="ntru__encrypt_8h_source.html">ntru_encrypt.h</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a9063450af4b523d202c7628dbac70e68"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_encrypt_poly </td>
<td>(</td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>msg_tern</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>rnd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>out</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>encrypt the msg, using the math: e = (h r) + m (mod q)</p>
<p>e = the encrypted poly</p>
<p>h = the public key</p>
<p>r = the random poly</p>
<p>m = the message poly</p>
<p>q = large mod</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">msg_tern</td><td>the message to encrypt, in ternary format </td></tr>
<tr><td class="paramname">pub_key</td><td>the public key </td></tr>
<tr><td class="paramname">rnd</td><td>the random poly (should have relatively small coefficients, but not restricted to {-1, 0, 1}) </td></tr>
<tr><td class="paramname">out</td><td>the output poly which is in the range {0, q-1} (not ternary!) [out] </td></tr>
<tr><td class="paramname">params</td><td><a class="el" href="structntru__params.html">ntru_params</a> the ntru context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__encrypt_8c_source.html#l00046">46</a> of file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
</div>
</div>
<a class="anchor" id="a0bb47c0fa0dd4a4cfa0c0f7a722fd554"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* ntru_encrypt_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstring.html">string</a> *&#160;</td>
<td class="paramname"><em>msg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub_key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fmpz_poly_t&#160;</td>
<td class="paramname"><em>rnd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Encrypt a message in the form of a null-terminated char array and return a string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">msg</td><td>the message </td></tr>
<tr><td class="paramname">pub_key</td><td>the public key </td></tr>
<tr><td class="paramname">rnd</td><td>the random poly (should have relatively small coefficients, but not restricted to {-1, 0, 1}) </td></tr>
<tr><td class="paramname">params</td><td><a class="el" href="structntru__params.html">ntru_params</a> the ntru context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the newly allocated encrypted string </dd></dl>
<p>Definition at line <a class="el" href="ntru__encrypt_8c_source.html#l00074">74</a> of file <a class="el" href="ntru__encrypt_8c_source.html">ntru_encrypt.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,6 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_encrypt.h" name="/home/travis/build/hasufell/pqc/src/ntru_encrypt.h">
<area shape="rect" id="node3" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,195,109,224"/>
<area shape="rect" id="node7" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="296,117,381,147"/>
<area shape="rect" id="node21" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="443,117,536,147"/>
<area shape="rect" id="node9" href="$ntru__err_8h.html" title="error handling " alt="" coords="184,195,261,224"/>
</map>

View File

@ -1 +0,0 @@
e4e4917898c572685b6a0d48ebcb9834

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View File

@ -1,155 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_encrypt.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_encrypt.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__encrypt_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef PQC_ENCRYPT_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define PQC_ENCRYPT_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<a class="code" href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68">ntru_encrypt_poly</a>(</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">const</span> fmpz_poly_t msg_tern,</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">const</span> fmpz_poly_t pub_key,</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> fmpz_poly_t rnd,</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; fmpz_poly_t out,</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<a class="code" href="ntru__encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a>(</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">const</span> <span class="keywordtype">string</span> *msg,</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> fmpz_poly_t pub_key,</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> fmpz_poly_t rnd,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">const</span> <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* PQC_ENCRYPT_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__encrypt_8h_html_a9063450af4b523d202c7628dbac70e68"><div class="ttname"><a href="ntru__encrypt_8h.html#a9063450af4b523d202c7628dbac70e68">ntru_encrypt_poly</a></div><div class="ttdeci">void ntru_encrypt_poly(const fmpz_poly_t msg_tern, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, fmpz_poly_t out, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__encrypt_8c_source.html#l00046">ntru_encrypt.c:46</a></div></div>
<div class="ttc" id="ntru__encrypt_8h_html_a0bb47c0fa0dd4a4cfa0c0f7a722fd554"><div class="ttname"><a href="ntru__encrypt_8h.html#a0bb47c0fa0dd4a4cfa0c0f7a722fd554">ntru_encrypt_string</a></div><div class="ttdeci">string * ntru_encrypt_string(const string *msg, const fmpz_poly_t pub_key, const fmpz_poly_t rnd, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__encrypt_8c_source.html#l00074">ntru_encrypt.c:74</a></div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,214 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_err.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">ntru_err.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>error handling
<a href="#details">More...</a></p>
<p><a href="ntru__err_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:ab0f71521e9bc99beab8ece52bb00341a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__err_8h.html#ab0f71521e9bc99beab8ece52bb00341a">NTRU_ABORT</a>(...)</td></tr>
<tr class="separator:ab0f71521e9bc99beab8ece52bb00341a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d4dd1c1539c408c0dcd915750e8f224"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(...)</td></tr>
<tr class="separator:a5d4dd1c1539c408c0dcd915750e8f224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b2647533f0e1a6f81e08e8315674d55"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__err_8h.html#a8b2647533f0e1a6f81e08e8315674d55">NTRU_WARN</a>(...)</td></tr>
<tr class="separator:a8b2647533f0e1a6f81e08e8315674d55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcb6d051074ab3a58c5e9764f927753c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a>(...)</td></tr>
<tr class="separator:abcb6d051074ab3a58c5e9764f927753c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>error handling </p>
<p>This file provides error macros and functions for the NTRU cryptosystem. </p>
<p>Definition in file <a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ab0f71521e9bc99beab8ece52bb00341a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NTRU_ABORT</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>...</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">{ \</div>
<div class="line"> fprintf(stderr, __VA_ARGS__); \</div>
<div class="line"> abort(); \</div>
<div class="line">}</div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="ntru__err_8h_source.html#l00033">33</a> of file <a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>.</p>
</div>
</div>
<a class="anchor" id="a5d4dd1c1539c408c0dcd915750e8f224"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NTRU_ABORT_DEBUG</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>...</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">{ \</div>
<div class="line"> fprintf(stderr, __VA_ARGS__); \</div>
<div class="line"> fprintf(stderr, <span class="stringliteral">&quot; [file %s, line %d]:\n&quot;</span>, \</div>
<div class="line"> __FILE__, __LINE__); \</div>
<div class="line"> abort(); \</div>
<div class="line">}</div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="ntru__err_8h_source.html#l00039">39</a> of file <a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>.</p>
</div>
</div>
<a class="anchor" id="a8b2647533f0e1a6f81e08e8315674d55"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NTRU_WARN</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>...</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">{ \</div>
<div class="line"> fprintf(stderr, __VA_ARGS__); \</div>
<div class="line">}</div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="ntru__err_8h_source.html#l00047">47</a> of file <a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>.</p>
</div>
</div>
<a class="anchor" id="abcb6d051074ab3a58c5e9764f927753c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NTRU_WARN_DEBUG</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>...</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">{ \</div>
<div class="line"> fprintf(stderr, __VA_ARGS__); \</div>
<div class="line"> fprintf(stderr, <span class="stringliteral">&quot; [file %s, line %d]:\n&quot;</span>, \</div>
<div class="line"> __FILE__, __LINE__); \</div>
<div class="line">}</div>
</div><!-- fragment -->
<p>Definition at line <a class="el" href="ntru__err_8h_source.html#l00052">52</a> of file <a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,152 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_err.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_err.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__err_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#ifndef NTRU_ERR_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#define NTRU_ERR_H</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="ntru__err_8h.html#ab0f71521e9bc99beab8ece52bb00341a"> 33</a></span>&#160;<span class="preprocessor">#define NTRU_ABORT(...) \</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">{ \</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"> fprintf(stderr, __VA_ARGS__); \</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"> abort(); \</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">}</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224"> 39</a></span>&#160;<span class="preprocessor">#define NTRU_ABORT_DEBUG(...) \</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">{ \</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"> fprintf(stderr, __VA_ARGS__); \</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"> fprintf(stderr, &quot; [file %s, line %d]:\n&quot;, \</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"> __FILE__, __LINE__); \</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"> abort(); \</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">}</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="ntru__err_8h.html#a8b2647533f0e1a6f81e08e8315674d55"> 47</a></span>&#160;<span class="preprocessor">#define NTRU_WARN(...) \</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">{ \</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> fprintf(stderr, __VA_ARGS__); \</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">}</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c"> 52</a></span>&#160;<span class="preprocessor">#define NTRU_WARN_DEBUG(...) \</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">{ \</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"> fprintf(stderr, __VA_ARGS__); \</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"> fprintf(stderr, &quot; [file %s, line %d]:\n&quot;, \</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> __FILE__, __LINE__); \</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">}</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_ERR_H */</span><span class="preprocessor"></span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,224 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_file.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_file.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>file operations
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__err_8h_source.html">ntru_err.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__mem_8h_source.html">ntru_mem.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;fcntl.h&gt;</code><br />
<code>#include &lt;stdbool.h&gt;</code><br />
<code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;sys/stat.h&gt;</code><br />
<code>#include &lt;sys/types.h&gt;</code><br />
<code>#include &lt;unistd.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_file.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__file_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8c">
<area shape="rect" id="node3" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/><area shape="rect" id="node7" href="ntru__err_8h.html" title="error handling " alt="" coords="192,117,269,147"/><area shape="rect" id="node9" href="ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="293,117,384,147"/><area shape="rect" id="node12" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="408,117,501,147"/></map>
</div>
</div>
<p><a href="ntru__file_8c_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:a15651456278c8f50777dfe104f492951"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">STD_FILE_BUF</a>&#160;&#160;&#160;4096</td></tr>
<tr class="separator:a15651456278c8f50777dfe104f492951"><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:a348c2a56837571f410d44631abc09dc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a> (char const *const filename)</td></tr>
<tr class="separator:a348c2a56837571f410d44631abc09dc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f8eef5ea12c77ed2491d96864eb0d43"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a> (<a class="el" href="structstring.html">string</a> const *wstring, char const *const filename)</td></tr>
<tr class="separator:a1f8eef5ea12c77ed2491d96864eb0d43"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>file operations </p>
<p>Allows operations on files, such as reading and writing. </p>
<p>Definition in file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a15651456278c8f50777dfe104f492951"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define STD_FILE_BUF&#160;&#160;&#160;4096</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00044">44</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a348c2a56837571f410d44631abc09dc4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* read_file </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a file and returns a newly allocated string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>file to open </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which must be freed by the caller or NULL on failure (e.g. if the file could not be opened/closed) </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00050">50</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
<a class="anchor" id="a1f8eef5ea12c77ed2491d96864eb0d43"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool write_file </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstring.html">string</a> const *&#160;</td>
<td class="paramname"><em>wstring</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Write a string to a file. The file will be pruned or created if it does not exist.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wstring</td><td>the string to write to the file </td></tr>
<tr><td class="paramname">filename</td><td>the name of the file to write to </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success or false for failure if fopen or fclose failed </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00107">107</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,6 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_file.c" name="/home/travis/build/hasufell/pqc/src/ntru_file.c">
<area shape="rect" id="node3" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/>
<area shape="rect" id="node7" href="$ntru__err_8h.html" title="error handling " alt="" coords="192,117,269,147"/>
<area shape="rect" id="node9" href="$ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="293,117,384,147"/>
<area shape="rect" id="node12" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="408,117,501,147"/>
</map>

View File

@ -1 +0,0 @@
14fe5052b4997663bc758bcb68f81974

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

View File

@ -1,232 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_file.c Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_file.c</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__file_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__common_8h.html">ntru_common.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__err_8h.html">ntru_err.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__mem_8h.html">ntru_mem.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;sys/stat.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951"> 44</a></span>&#160;<span class="preprocessor">#define STD_FILE_BUF 4096</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="ntru_8h.html#a348c2a56837571f410d44631abc09dc4"> 50</a></span>&#160;<a class="code" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename)</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;{</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordtype">char</span> buf[<a class="code" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">STD_FILE_BUF</a>],</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; *cstring = NULL;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">int</span> fd = 0;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">size_t</span> str_size = 0;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; ssize_t n;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">size_t</span> file_length = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">string</span> *result_string;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; fd = open(filename, O_RDONLY);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; file_length = lseek(fd, 0, SEEK_END) + 1;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; lseek(fd, 0, SEEK_SET);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; cstring = malloc(<span class="keyword">sizeof</span>(<span class="keywordtype">char</span>) * file_length);</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (fd != -1) {</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* read and copy chunks */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">while</span> ((n = read(fd, buf, <a class="code" href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">STD_FILE_BUF</a>)) != 0) {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">if</span> (n == -1) {</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a>(<span class="stringliteral">&quot;Failed while reading file descriptor %d&quot;</span>,</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; fd);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">goto</span> failure_cleanup;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; str_size += n; <span class="comment">/* count total bytes read */</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">/* append buffer to string */</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; memcpy(cstring + (str_size - n), buf, (<span class="keywordtype">size_t</span>)n);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* add trailing NULL byte */</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; cstring[str_size] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (close(fd)) {</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a>(<span class="stringliteral">&quot;Failed to close file descripter %d\n&quot;</span>, fd);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">goto</span> failure_cleanup;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; result_string = <a class="code" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a>(<span class="keyword">sizeof</span>(*result_string));</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; result_string-&gt;<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a> = cstring;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; result_string-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a> = str_size;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> result_string;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;failure_cleanup:</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; free(cstring);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="ntru_8h.html#af2a0fc4dd4109749d8f3100a913cc304"> 107</a></span>&#160;<a class="code" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a>(<span class="keywordtype">string</span> <span class="keyword">const</span> *wstring, <span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename)</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;{</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; FILE *fp;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; fp = fopen(filename, <span class="stringliteral">&quot;w&quot;</span>);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (!fp) {</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a>(<span class="stringliteral">&quot;Failed while creating file\n&quot;</span>);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">for</span> (uint32_t i = 0; i &lt; wstring-&gt;<a class="code" href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">len</a>; i++)</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; fprintf(fp, <span class="stringliteral">&quot;%c&quot;</span>, wstring-&gt;<a class="code" href="structstring.html#afd608f62303958cea6f1f7afdec1e282">ptr</a>[i]);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (fclose(fp)) {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a>(<span class="stringliteral">&quot;Failed to close file descripter\n&quot;</span>);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;}</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="ttc" id="structstring_html_aa6bcf0353fd5cf2f374a9b1dd0e4a73a"><div class="ttname"><a href="structstring.html#aa6bcf0353fd5cf2f374a9b1dd0e4a73a">string::len</a></div><div class="ttdeci">size_t len</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00053">ntru_string.h:53</a></div></div>
<div class="ttc" id="ntru__file_8c_html_a1f8eef5ea12c77ed2491d96864eb0d43"><div class="ttname"><a href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a></div><div class="ttdeci">bool write_file(string const *wstring, char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00107">ntru_file.c:107</a></div></div>
<div class="ttc" id="ntru__mem_8h_html"><div class="ttname"><a href="ntru__mem_8h.html">ntru_mem.h</a></div><div class="ttdoc">header for ntru_mem.c </div></div>
<div class="ttc" id="ntru__file_8c_html_a15651456278c8f50777dfe104f492951"><div class="ttname"><a href="ntru__file_8c.html#a15651456278c8f50777dfe104f492951">STD_FILE_BUF</a></div><div class="ttdeci">#define STD_FILE_BUF</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00044">ntru_file.c:44</a></div></div>
<div class="ttc" id="ntru__file_8c_html_a348c2a56837571f410d44631abc09dc4"><div class="ttname"><a href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a></div><div class="ttdeci">string * read_file(char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00050">ntru_file.c:50</a></div></div>
<div class="ttc" id="ntru__common_8h_html"><div class="ttname"><a href="ntru__common_8h.html">ntru_common.h</a></div><div class="ttdoc">common macros/functions </div></div>
<div class="ttc" id="ntru__err_8h_html_abcb6d051074ab3a58c5e9764f927753c"><div class="ttname"><a href="ntru__err_8h.html#abcb6d051074ab3a58c5e9764f927753c">NTRU_WARN_DEBUG</a></div><div class="ttdeci">#define NTRU_WARN_DEBUG(...)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__err_8h_source.html#l00052">ntru_err.h:52</a></div></div>
<div class="ttc" id="ntru__err_8h_html"><div class="ttname"><a href="ntru__err_8h.html">ntru_err.h</a></div><div class="ttdoc">error handling </div></div>
<div class="ttc" id="ntru__mem_8c_html_a020790bf8b201fde92395cf975c0c691"><div class="ttname"><a href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a></div><div class="ttdeci">void * ntru_malloc(size_t size)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__mem_8c_source.html#l00038">ntru_mem.c:38</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="structstring_html_afd608f62303958cea6f1f7afdec1e282"><div class="ttname"><a href="structstring.html#afd608f62303958cea6f1f7afdec1e282">string::ptr</a></div><div class="ttdeci">char * ptr</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8h_source.html#l00049">ntru_string.h:49</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,193 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_file.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_file.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>header for <a class="el" href="ntru__file_8c.html" title="file operations ">ntru_file.c</a>
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__common_8h_source.html">ntru_common.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;stdbool.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_file.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__file_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__file_8h">
<area shape="rect" id="node3" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/><area shape="rect" id="node7" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="141,117,235,147"/></map>
</div>
</div>
<p><a href="ntru__file_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a348c2a56837571f410d44631abc09dc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstring.html">string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8h.html#a348c2a56837571f410d44631abc09dc4">read_file</a> (char const *const filename)</td></tr>
<tr class="separator:a348c2a56837571f410d44631abc09dc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f8eef5ea12c77ed2491d96864eb0d43"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__file_8h.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a> (<a class="el" href="structstring.html">string</a> const *wstring, char const *const filename)</td></tr>
<tr class="separator:a1f8eef5ea12c77ed2491d96864eb0d43"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>header for <a class="el" href="ntru__file_8c.html" title="file operations ">ntru_file.c</a> </p>
<p>Header for the external API of <a class="el" href="ntru__file_8c.html" title="file operations ">ntru_file.c</a>. </p>
<p>Definition in file <a class="el" href="ntru__file_8h_source.html">ntru_file.h</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a348c2a56837571f410d44631abc09dc4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstring.html">string</a>* read_file </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a file and returns a newly allocated string.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>file to open </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which must be freed by the caller or NULL on failure (e.g. if the file could not be opened/closed) </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00050">50</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
<a class="anchor" id="a1f8eef5ea12c77ed2491d96864eb0d43"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool write_file </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structstring.html">string</a> const *&#160;</td>
<td class="paramname"><em>wstring</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Write a string to a file. The file will be pruned or created if it does not exist.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wstring</td><td>the string to write to the file </td></tr>
<tr><td class="paramname">filename</td><td>the name of the file to write to </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success or false for failure if fopen or fclose failed </dd></dl>
<p>Definition at line <a class="el" href="ntru__file_8c_source.html#l00107">107</a> of file <a class="el" href="ntru__file_8c_source.html">ntru_file.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,4 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_file.h" name="/home/travis/build/hasufell/pqc/src/ntru_file.h">
<area shape="rect" id="node3" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="5,117,117,147"/>
<area shape="rect" id="node7" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="141,117,235,147"/>
</map>

View File

@ -1 +0,0 @@
6777d5bfce02261879638e31ca068e7d

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

View File

@ -1,142 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_file.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_file.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__file_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef NTRU_FILE_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define NTRU_FILE_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__common_8h.html">ntru_common.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">string</span> *</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="ntru__file_8h.html#a348c2a56837571f410d44631abc09dc4">read_file</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<a class="code" href="ntru__file_8h.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a>(<span class="keywordtype">string</span> <span class="keyword">const</span> *wstring, <span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_FILE_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru__file_8h_html_a1f8eef5ea12c77ed2491d96864eb0d43"><div class="ttname"><a href="ntru__file_8h.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a></div><div class="ttdeci">bool write_file(string const *wstring, char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00107">ntru_file.c:107</a></div></div>
<div class="ttc" id="ntru__file_8h_html_a348c2a56837571f410d44631abc09dc4"><div class="ttname"><a href="ntru__file_8h.html#a348c2a56837571f410d44631abc09dc4">read_file</a></div><div class="ttdeci">string * read_file(char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00050">ntru_file.c:50</a></div></div>
<div class="ttc" id="ntru__common_8h_html"><div class="ttname"><a href="ntru__common_8h.html">ntru_common.h</a></div><div class="ttdoc">common macros/functions </div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,400 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_keypair.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_keypair.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>key creation and operations
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__ascii__poly_8h_source.html">ntru_ascii_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__file_8h_source.html">ntru_file.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__keypair_8h_source.html">ntru_keypair.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly_8h_source.html">ntru_poly.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__poly__ascii_8h_source.html">ntru_poly_ascii.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ntru__string_8h_source.html">ntru_string.h</a>&quot;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
<code>#include &lt;stdbool.h&gt;</code><br />
<code>#include &lt;string.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_keypair.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__keypair_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8c">
<area shape="rect" id="node3" href="ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="176,117,296,147"/><area shape="rect" id="node9" href="ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="59,195,152,224"/><area shape="rect" id="node12" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="515,195,619,224"/><area shape="rect" id="node20" href="ntru__file_8h.html" title="header for ntru_file.c " alt="" coords="24,117,102,147"/><area shape="rect" id="node26" href="ntru__keypair_8h.html" title="header for ntru_keypair.c " alt="" coords="515,117,619,147"/><area shape="rect" id="node33" href="ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="744,117,830,147"/><area shape="rect" id="node44" href="ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="320,117,440,147"/><area shape="rect" id="node5" href="ntru__common_8h.html" title="common macros/functions " alt="" coords="176,195,288,224"/><area shape="rect" id="node35" href="ntru__err_8h.html" title="error handling " alt="" coords="792,195,870,224"/></map>
</div>
</div>
<p><a href="ntru__keypair_8c_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a6873d41211a92c4f6b0074ef34ae1743"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a> (fmpz_poly_t f, fmpz_poly_t g, <a class="el" href="structkeypair.html">keypair</a> *pair, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a6873d41211a92c4f6b0074ef34ae1743"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41741ed660cb806c47335f66055e1bdd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a> (char const *const filename, fmpz_poly_t pub, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a41741ed660cb806c47335f66055e1bdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa29f14a14486d3f6b979ee900d7e738"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a> (char const *const filename, fmpz_poly_t priv, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:afa29f14a14486d3f6b979ee900d7e738"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a> (char const *const filename, fmpz_poly_t pub, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f917ea6ef5302826c888e5c88e0869e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a> (char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a1f917ea6ef5302826c888e5c88e0869e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5279c4990bc22bb9e735fe36372a6786"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8c.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a> (<a class="el" href="structkeypair.html">keypair</a> *pair)</td></tr>
<tr class="separator:a5279c4990bc22bb9e735fe36372a6786"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>key creation and operations </p>
<p>This file handles the creation of the key pair and possibly common operations on them. </p>
<p>Definition in file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="afa29f14a14486d3f6b979ee900d7e738"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void export_priv_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export the private key to a file.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to save the private key into </td></tr>
<tr><td class="paramname">priv</td><td>the private key </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00111">111</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a41741ed660cb806c47335f66055e1bdd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void export_public_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export the public key to a file.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to save the public key into </td></tr>
<tr><td class="paramname">pub</td><td>the public key </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00096">96</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a1f917ea6ef5302826c888e5c88e0869e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void import_priv_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Import the private key from a file and store him along with his inverse.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to get the private key from </td></tr>
<tr><td class="paramname">priv</td><td>where to save the private key [out] </td></tr>
<tr><td class="paramname">priv_inv</td><td>where to save the inverse of the private key [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00157">157</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a4e2c6da04c55e8c1b6c447f4cc9f1d6f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void import_public_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Import the public key from a file. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to get the public key from </td></tr>
<tr><td class="paramname">pub</td><td>where to save the public key [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00132">132</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a6873d41211a92c4f6b0074ef34ae1743"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ntru_create_keypair </td>
<td>(</td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>f</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>g</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structkeypair.html">keypair</a> *&#160;</td>
<td class="paramname"><em>pair</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates an NTRU key pair, consisting of public and private components.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a random polynomial </td></tr>
<tr><td class="paramname">g</td><td>a random polynomial </td></tr>
<tr><td class="paramname">pair</td><td>store private and public components here [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success, false if f or g are not invertible (then the caller hast to try different ones) </dd></dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00047">47</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a5279c4990bc22bb9e735fe36372a6786"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_delete_keypair </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structkeypair.html">keypair</a> *&#160;</td>
<td class="paramname"><em>pair</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to free the inner structure of a keypair. This will not call free() on the pair itself.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pair</td><td>the pair to free the inner structure of </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00197">197</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,11 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_keypair.c" name="/home/travis/build/hasufell/pqc/src/ntru_keypair.c">
<area shape="rect" id="node3" href="$ntru__ascii__poly_8h.html" title="header for ntru_ascii_poly.c " alt="" coords="176,117,296,147"/>
<area shape="rect" id="node9" href="$ntru__string_8h.html" title="header for ntru_string.c " alt="" coords="59,195,152,224"/>
<area shape="rect" id="node12" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="515,195,619,224"/>
<area shape="rect" id="node20" href="$ntru__file_8h.html" title="header for ntru_file.c " alt="" coords="24,117,102,147"/>
<area shape="rect" id="node26" href="$ntru__keypair_8h.html" title="header for ntru_keypair.c " alt="" coords="515,117,619,147"/>
<area shape="rect" id="node33" href="$ntru__poly_8h.html" title="header for ntru_poly.c " alt="" coords="744,117,830,147"/>
<area shape="rect" id="node44" href="$ntru__poly__ascii_8h.html" title="header for ntru_poly_ascii.c " alt="" coords="320,117,440,147"/>
<area shape="rect" id="node5" href="$ntru__common_8h.html" title="common macros/functions " alt="" coords="176,195,288,224"/>
<area shape="rect" id="node35" href="$ntru__err_8h.html" title="error handling " alt="" coords="792,195,870,224"/>
</map>

View File

@ -1 +0,0 @@
4d32fd169409284b568269543f3add8f

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

View File

@ -1,328 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_keypair.c Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_keypair.c</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__keypair_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__file_8h.html">ntru_file.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__keypair_8h.html">ntru_keypair.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly_8h.html">ntru_poly.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__string_8h.html">ntru_string.h</a>&quot;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743"> 47</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a>(</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; fmpz_poly_t f,</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; fmpz_poly_t g,</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structkeypair.html">keypair</a> *pair,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">bool</span> retval = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; fmpz_poly_t Fq,</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; Fp,</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; pub;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (!f || !g || !params)</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">goto</span> _return;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; fmpz_poly_init(Fq);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; fmpz_poly_init(Fp);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; fmpz_poly_init(pub);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="ntru__poly_8c.html#ace66beb516186e52f9b5b1ed8a397849">poly_inverse_poly_q</a>(f, Fq, params))</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">goto</span> _cleanup;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="ntru__poly_8c.html#ae77b2014df42e5ed612206d5930ac608">poly_inverse_poly_p</a>(f, Fp, params))</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">goto</span> _cleanup;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a>(Fq, g, pub, params, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; fmpz_poly_scalar_mul_ui(pub, pub, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">fmpz_poly_mod_unsigned</a>(pub, params-&gt;<a class="code" href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">q</a>);</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; fmpz_poly_init(pair-&gt;<a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; fmpz_poly_init(pair-&gt;<a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; fmpz_poly_init(pair-&gt;<a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; fmpz_poly_set(pair-&gt;<a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>, f);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; fmpz_poly_set(pair-&gt;<a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>, Fp);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; fmpz_poly_set(pair-&gt;<a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>, pub);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; retval = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;_cleanup:</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; fmpz_poly_clear(Fq);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; fmpz_poly_clear(Fp);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; fmpz_poly_clear(pub);</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;_return:</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> retval;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="keypair_8h.html#a41741ed660cb806c47335f66055e1bdd"> 96</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; fmpz_poly_t pub,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">string</span> *pub_string;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; pub_string = <a class="code" href="ntru__poly__ascii_8c.html#a4ba0179e3ae0d5e721ff8429a8265e80">poly_to_base64</a>(pub, params);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a>(pub_string, filename);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a>(pub_string);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;}</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738"> 111</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; fmpz_poly_t priv,</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;{</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">string</span> *priv_string;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; fmpz_poly_t priv_u;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; fmpz_poly_init(priv_u);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; fmpz_poly_set(priv_u, priv);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">fmpz_poly_mod_unsigned</a>(priv_u, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; priv_string = <a class="code" href="ntru__poly__ascii_8c.html#a4ba0179e3ae0d5e721ff8429a8265e80">poly_to_base64</a>(priv_u, params);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a>(priv_string, filename);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; fmpz_poly_clear(priv_u);</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a>(priv_string);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;}</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f"> 132</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; fmpz_poly_t pub,</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;{</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordtype">string</span> *pub_string;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; fmpz_poly_t **imported;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; pub_string = <a class="code" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a>(filename);</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; imported = <a class="code" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a>(pub_string, params);</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">/* if the array exceeds one element, then something</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> * went horribly wrong */</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (*imported[1])</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Failed importing public key!&quot;</span>);</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; fmpz_poly_set(pub, **imported);</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a>(pub_string);</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a>(imported);</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; free(imported);</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;}</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e"> 157</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; fmpz_poly_t priv,</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; fmpz_poly_t priv_inv,</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params)</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;{</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordtype">string</span> *pub_string;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; fmpz_poly_t **imported,</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; Fp;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; fmpz_poly_init(Fp);</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; pub_string = <a class="code" href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a>(filename);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; imported = <a class="code" href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a>(pub_string, params);</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(**imported, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="comment">/* if the array exceeds one element, then something</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> * went horribly wrong */</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span> (*imported[1])</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a>(<span class="stringliteral">&quot;Failed importing private key!&quot;</span>);</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; fmpz_poly_set(priv, **imported);</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="ntru__poly_8c.html#ae77b2014df42e5ed612206d5930ac608">poly_inverse_poly_p</a>(priv, Fp, params))</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">goto</span> cleanup;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a>(Fp, params-&gt;<a class="code" href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">p</a>);</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; fmpz_poly_set(priv_inv, Fp);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; fmpz_poly_clear(Fp);</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;cleanup:</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a>(pub_string);</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a>(imported);</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; free(imported);</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;}</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786"> 197</a></span>&#160;<a class="code" href="ntru__keypair_8c.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a>(<a class="code" href="structkeypair.html">keypair</a> *pair)</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;{</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; fmpz_poly_clear(pair-&gt;<a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>);</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; fmpz_poly_clear(pair-&gt;<a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>);</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; fmpz_poly_clear(pair-&gt;<a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>);</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;}</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment">/*------------------------------------------------------------------------*/</span></div>
<div class="ttc" id="ntru__poly_8c_html_ace66beb516186e52f9b5b1ed8a397849"><div class="ttname"><a href="ntru__poly_8c.html#ace66beb516186e52f9b5b1ed8a397849">poly_inverse_poly_q</a></div><div class="ttdeci">bool poly_inverse_poly_q(const fmpz_poly_t a, fmpz_poly_t Fq, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00297">ntru_poly.c:297</a></div></div>
<div class="ttc" id="ntru__string_8c_html_ac1b5f66fbbbdfc7901357ddcfec52e5a"><div class="ttname"><a href="ntru__string_8c.html#ac1b5f66fbbbdfc7901357ddcfec52e5a">string_delete</a></div><div class="ttdeci">void string_delete(string *del_string)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__string_8c_source.html#l00047">ntru_string.c:47</a></div></div>
<div class="ttc" id="ntru__keypair_8h_html"><div class="ttname"><a href="ntru__keypair_8h.html">ntru_keypair.h</a></div><div class="ttdoc">header for ntru_keypair.c </div></div>
<div class="ttc" id="ntru__keypair_8c_html_a5279c4990bc22bb9e735fe36372a6786"><div class="ttname"><a href="ntru__keypair_8c.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a></div><div class="ttdeci">void ntru_delete_keypair(keypair *pair)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00197">ntru_keypair.c:197</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_ae7d0d8364dba689df3fb4904610634cc"><div class="ttname"><a href="ntru__poly_8c.html#ae7d0d8364dba689df3fb4904610634cc">fmpz_poly_mod_unsigned</a></div><div class="ttdeci">void fmpz_poly_mod_unsigned(fmpz_poly_t a, const uint32_t mod)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00166">ntru_poly.c:166</a></div></div>
<div class="ttc" id="ntru__file_8c_html_a1f8eef5ea12c77ed2491d96864eb0d43"><div class="ttname"><a href="ntru__file_8c.html#a1f8eef5ea12c77ed2491d96864eb0d43">write_file</a></div><div class="ttdeci">bool write_file(string const *wstring, char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00107">ntru_file.c:107</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_a7c4f5e96355518dc97a23da8f34b661a"><div class="ttname"><a href="ntru__poly_8c.html#a7c4f5e96355518dc97a23da8f34b661a">fmpz_poly_mod</a></div><div class="ttdeci">void fmpz_poly_mod(fmpz_poly_t a, const uint32_t mod)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00182">ntru_poly.c:182</a></div></div>
<div class="ttc" id="ntru__err_8h_html_a5d4dd1c1539c408c0dcd915750e8f224"><div class="ttname"><a href="ntru__err_8h.html#a5d4dd1c1539c408c0dcd915750e8f224">NTRU_ABORT_DEBUG</a></div><div class="ttdeci">#define NTRU_ABORT_DEBUG(...)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__err_8h_source.html#l00039">ntru_err.h:39</a></div></div>
<div class="ttc" id="structntru__params_html_a41b368825e1eb126604e13e8f549ec8f"><div class="ttname"><a href="structntru__params.html#a41b368825e1eb126604e13e8f549ec8f">ntru_params::p</a></div><div class="ttdeci">uint32_t p</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00056">ntru_params.h:56</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_ae77b2014df42e5ed612206d5930ac608"><div class="ttname"><a href="ntru__poly_8c.html#ae77b2014df42e5ed612206d5930ac608">poly_inverse_poly_p</a></div><div class="ttdeci">bool poly_inverse_poly_p(const fmpz_poly_t a, fmpz_poly_t Fp, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00409">ntru_poly.c:409</a></div></div>
<div class="ttc" id="ntru__ascii__poly_8c_html_a8460cd27ad4562f560bb304609a3e06d"><div class="ttname"><a href="ntru__ascii__poly_8c.html#a8460cd27ad4562f560bb304609a3e06d">base64_to_poly_arr</a></div><div class="ttdeci">fmpz_poly_t ** base64_to_poly_arr(const string *to_poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__ascii__poly_8c_source.html#l00146">ntru_ascii_poly.c:146</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="ntru__file_8h_html"><div class="ttname"><a href="ntru__file_8h.html">ntru_file.h</a></div><div class="ttdoc">header for ntru_file.c </div></div>
<div class="ttc" id="structkeypair_html_a9e63f1d275b91c9d9716fb4069461799"><div class="ttname"><a href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair::priv_inv</a></div><div class="ttdeci">fmpz_poly_t priv_inv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00056">ntru_keypair.h:56</a></div></div>
<div class="ttc" id="ntru__poly__ascii_8h_html"><div class="ttname"><a href="ntru__poly__ascii_8h.html">ntru_poly_ascii.h</a></div><div class="ttdoc">header for ntru_poly_ascii.c </div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__file_8c_html_a348c2a56837571f410d44631abc09dc4"><div class="ttname"><a href="ntru__file_8c.html#a348c2a56837571f410d44631abc09dc4">read_file</a></div><div class="ttdeci">string * read_file(char const *const filename)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__file_8c_source.html#l00050">ntru_file.c:50</a></div></div>
<div class="ttc" id="ntru__keypair_8c_html_a41741ed660cb806c47335f66055e1bdd"><div class="ttname"><a href="ntru__keypair_8c.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a></div><div class="ttdeci">void export_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00096">ntru_keypair.c:96</a></div></div>
<div class="ttc" id="structkeypair_html_afa635c70f233d0b7449b4a17513646c4"><div class="ttname"><a href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair::pub</a></div><div class="ttdeci">fmpz_poly_t pub</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00061">ntru_keypair.h:61</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_ae96f479ddd97af709a0ed50817fd3fb3"><div class="ttname"><a href="ntru__poly_8c.html#ae96f479ddd97af709a0ed50817fd3fb3">poly_starmultiply</a></div><div class="ttdeci">void poly_starmultiply(const fmpz_poly_t a, const fmpz_poly_t b, fmpz_poly_t c, const ntru_params *params, uint32_t modulus)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00239">ntru_poly.c:239</a></div></div>
<div class="ttc" id="ntru__poly__ascii_8c_html_a4ba0179e3ae0d5e721ff8429a8265e80"><div class="ttname"><a href="ntru__poly__ascii_8c.html#a4ba0179e3ae0d5e721ff8429a8265e80">poly_to_base64</a></div><div class="ttdeci">string * poly_to_base64(const fmpz_poly_t poly, const ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly__ascii_8c_source.html#l00237">ntru_poly_ascii.c:237</a></div></div>
<div class="ttc" id="ntru__poly_8c_html_a3f53c63383ff301b20dcede0783869a7"><div class="ttname"><a href="ntru__poly_8c.html#a3f53c63383ff301b20dcede0783869a7">poly_delete_array</a></div><div class="ttdeci">void poly_delete_array(fmpz_poly_t **poly_array)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__poly_8c_source.html#l00131">ntru_poly.c:131</a></div></div>
<div class="ttc" id="structkeypair_html_a9e9805ad001216da53f2c57accb288e1"><div class="ttname"><a href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">keypair::priv</a></div><div class="ttdeci">fmpz_poly_t priv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00051">ntru_keypair.h:51</a></div></div>
<div class="ttc" id="structkeypair_html"><div class="ttname"><a href="structkeypair.html">keypair</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00046">ntru_keypair.h:46</a></div></div>
<div class="ttc" id="structntru__params_html_a29680750bda49dc93e61a752b2f2a0f7"><div class="ttname"><a href="structntru__params.html#a29680750bda49dc93e61a752b2f2a0f7">ntru_params::q</a></div><div class="ttdeci">uint32_t q</div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00052">ntru_params.h:52</a></div></div>
<div class="ttc" id="ntru__string_8h_html"><div class="ttname"><a href="ntru__string_8h.html">ntru_string.h</a></div><div class="ttdoc">header for ntru_string.c </div></div>
<div class="ttc" id="ntru__keypair_8c_html_a6873d41211a92c4f6b0074ef34ae1743"><div class="ttname"><a href="ntru__keypair_8c.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a></div><div class="ttdeci">bool ntru_create_keypair(fmpz_poly_t f, fmpz_poly_t g, keypair *pair, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00047">ntru_keypair.c:47</a></div></div>
<div class="ttc" id="ntru__keypair_8c_html_afa29f14a14486d3f6b979ee900d7e738"><div class="ttname"><a href="ntru__keypair_8c.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a></div><div class="ttdeci">void export_priv_key(char const *const filename, fmpz_poly_t priv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00111">ntru_keypair.c:111</a></div></div>
<div class="ttc" id="ntru__keypair_8c_html_a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><div class="ttname"><a href="ntru__keypair_8c.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a></div><div class="ttdeci">void import_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00132">ntru_keypair.c:132</a></div></div>
<div class="ttc" id="ntru__keypair_8c_html_a1f917ea6ef5302826c888e5c88e0869e"><div class="ttname"><a href="ntru__keypair_8c.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a></div><div class="ttdeci">void import_priv_key(char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00157">ntru_keypair.c:157</a></div></div>
<div class="ttc" id="ntru__poly_8h_html"><div class="ttname"><a href="ntru__poly_8h.html">ntru_poly.h</a></div><div class="ttdoc">header for ntru_poly.c </div></div>
<div class="ttc" id="ntru__ascii__poly_8h_html"><div class="ttname"><a href="ntru__ascii__poly_8h.html">ntru_ascii_poly.h</a></div><div class="ttdoc">header for ntru_ascii_poly.c </div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,420 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_keypair.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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_keypair.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>header for <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a>
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__params_8h_source.html">ntru_params.h</a>&quot;</code><br />
<code>#include &lt;fmpz_poly.h&gt;</code><br />
<code>#include &lt;fmpz.h&gt;</code><br />
<code>#include &lt;stdbool.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_keypair.h:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__keypair_8h__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8h" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8h" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__keypair_8h">
<area shape="rect" id="node3" href="ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,117,109,147"/></map>
</div>
</div>
<p><a href="ntru__keypair_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkeypair.html">keypair</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:aacfc9254c7939584924ab9d27ba6f504"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structkeypair.html">keypair</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504">keypair</a></td></tr>
<tr class="separator:aacfc9254c7939584924ab9d27ba6f504"><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:a6873d41211a92c4f6b0074ef34ae1743"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a> (fmpz_poly_t f, fmpz_poly_t g, <a class="el" href="structkeypair.html">keypair</a> *pair, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a6873d41211a92c4f6b0074ef34ae1743"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41741ed660cb806c47335f66055e1bdd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a> (char const *const filename, fmpz_poly_t pub, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a41741ed660cb806c47335f66055e1bdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa29f14a14486d3f6b979ee900d7e738"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a> (char const *const filename, fmpz_poly_t priv, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:afa29f14a14486d3f6b979ee900d7e738"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a> (char const *const filename, fmpz_poly_t pub, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f917ea6ef5302826c888e5c88e0869e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a> (char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, <a class="el" href="structntru__params.html">ntru_params</a> *params)</td></tr>
<tr class="separator:a1f917ea6ef5302826c888e5c88e0869e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5279c4990bc22bb9e735fe36372a6786"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a> (<a class="el" href="structkeypair.html">keypair</a> *pair)</td></tr>
<tr class="separator:a5279c4990bc22bb9e735fe36372a6786"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>header for <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a> </p>
<p>Header for internal API of <a class="el" href="ntru__keypair_8c.html" title="key creation and operations ">ntru_keypair.c</a>. </p>
<p>Definition in file <a class="el" href="ntru__keypair_8h_source.html">ntru_keypair.h</a>.</p>
</div><h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="aacfc9254c7939584924ab9d27ba6f504"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structkeypair.html">keypair</a> <a class="el" href="structkeypair.html">keypair</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="ntru__keypair_8h_source.html#l00039">39</a> of file <a class="el" href="ntru__keypair_8h_source.html">ntru_keypair.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="afa29f14a14486d3f6b979ee900d7e738"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void export_priv_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export the private key to a file.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to save the private key into </td></tr>
<tr><td class="paramname">priv</td><td>the private key </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00111">111</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a41741ed660cb806c47335f66055e1bdd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void export_public_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export the public key to a file.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to save the public key into </td></tr>
<tr><td class="paramname">pub</td><td>the public key </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00096">96</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a1f917ea6ef5302826c888e5c88e0869e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void import_priv_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>priv_inv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Import the private key from a file and store him along with his inverse.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to get the private key from </td></tr>
<tr><td class="paramname">priv</td><td>where to save the private key [out] </td></tr>
<tr><td class="paramname">priv_inv</td><td>where to save the inverse of the private key [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00157">157</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a4e2c6da04c55e8c1b6c447f4cc9f1d6f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void import_public_key </td>
<td>(</td>
<td class="paramtype">char const *const&#160;</td>
<td class="paramname"><em>filename</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>pub</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Import the public key from a file. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">filename</td><td>the file to get the public key from </td></tr>
<tr><td class="paramname">pub</td><td>where to save the public key [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00132">132</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a6873d41211a92c4f6b0074ef34ae1743"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ntru_create_keypair </td>
<td>(</td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>f</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">fmpz_poly_t&#160;</td>
<td class="paramname"><em>g</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structkeypair.html">keypair</a> *&#160;</td>
<td class="paramname"><em>pair</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structntru__params.html">ntru_params</a> *&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates an NTRU key pair, consisting of public and private components.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a random polynomial </td></tr>
<tr><td class="paramname">g</td><td>a random polynomial </td></tr>
<tr><td class="paramname">pair</td><td>store private and public components here [out] </td></tr>
<tr><td class="paramname">params</td><td>the NTRU context </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success, false if f or g are not invertible (then the caller hast to try different ones) </dd></dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00047">47</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
<a class="anchor" id="a5279c4990bc22bb9e735fe36372a6786"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ntru_delete_keypair </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structkeypair.html">keypair</a> *&#160;</td>
<td class="paramname"><em>pair</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to free the inner structure of a keypair. This will not call free() on the pair itself.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pair</td><td>the pair to free the inner structure of </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="ntru__keypair_8c_source.html#l00197">197</a> of file <a class="el" href="ntru__keypair_8c_source.html">ntru_keypair.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,3 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_keypair.h" name="/home/travis/build/hasufell/pqc/src/ntru_keypair.h">
<area shape="rect" id="node3" href="$ntru__params_8h.html" title="NTRU parameters. " alt="" coords="5,117,109,147"/>
</map>

View File

@ -1 +0,0 @@
2d001a5467f4de2d56cacf708d06d2f1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

View File

@ -1,186 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_keypair.h Source File</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ntru_keypair.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ntru__keypair_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Copyright (C) 2014 FH Bielefeld</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * This file is part of a FH Bielefeld project.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * MA 02110-1301 USA</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef NTRU_KEYPAIR_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define NTRU_KEYPAIR_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ntru__params_8h.html">ntru_params.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &lt;fmpz_poly.h&gt;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;fmpz.h&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="ntru__keypair_8h.html#aacfc9254c7939584924ab9d27ba6f504"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structkeypair.html">keypair</a> <a class="code" href="structkeypair.html">keypair</a>;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structkeypair.html"> 46</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structkeypair.html">keypair</a> {</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1"> 51</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">priv</a>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799"> 56</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">priv_inv</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4"> 61</a></span>&#160; fmpz_poly_t <a class="code" href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">pub</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;};</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<a class="code" href="ntru__keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a>(</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; fmpz_poly_t f,</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; fmpz_poly_t g,</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="structkeypair.html">keypair</a> *pair,</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<a class="code" href="ntru__keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; fmpz_poly_t pub,</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<a class="code" href="ntru__keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; fmpz_poly_t priv,</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<a class="code" href="ntru__keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; fmpz_poly_t pub,</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<a class="code" href="ntru__keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * <span class="keyword">const</span> filename,</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; fmpz_poly_t priv,</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; fmpz_poly_t priv_inv,</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="structntru__params.html">ntru_params</a> *params);</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<a class="code" href="ntru__keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a>(<a class="code" href="structkeypair.html">keypair</a> *pair);</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* NTRU_KEYPAIR_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="ntru__keypair_8h_html_a41741ed660cb806c47335f66055e1bdd"><div class="ttname"><a href="ntru__keypair_8h.html#a41741ed660cb806c47335f66055e1bdd">export_public_key</a></div><div class="ttdeci">void export_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00096">ntru_keypair.c:96</a></div></div>
<div class="ttc" id="ntru__keypair_8h_html_a1f917ea6ef5302826c888e5c88e0869e"><div class="ttname"><a href="ntru__keypair_8h.html#a1f917ea6ef5302826c888e5c88e0869e">import_priv_key</a></div><div class="ttdeci">void import_priv_key(char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00157">ntru_keypair.c:157</a></div></div>
<div class="ttc" id="ntru__keypair_8h_html_a6873d41211a92c4f6b0074ef34ae1743"><div class="ttname"><a href="ntru__keypair_8h.html#a6873d41211a92c4f6b0074ef34ae1743">ntru_create_keypair</a></div><div class="ttdeci">bool ntru_create_keypair(fmpz_poly_t f, fmpz_poly_t g, keypair *pair, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00047">ntru_keypair.c:47</a></div></div>
<div class="ttc" id="structntru__params_html"><div class="ttname"><a href="structntru__params.html">ntru_params</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__params_8h_source.html#l00043">ntru_params.h:43</a></div></div>
<div class="ttc" id="structkeypair_html_a9e63f1d275b91c9d9716fb4069461799"><div class="ttname"><a href="structkeypair.html#a9e63f1d275b91c9d9716fb4069461799">keypair::priv_inv</a></div><div class="ttdeci">fmpz_poly_t priv_inv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00056">ntru_keypair.h:56</a></div></div>
<div class="ttc" id="ntru__params_8h_html"><div class="ttname"><a href="ntru__params_8h.html">ntru_params.h</a></div><div class="ttdoc">NTRU parameters. </div></div>
<div class="ttc" id="ntru__keypair_8h_html_a4e2c6da04c55e8c1b6c447f4cc9f1d6f"><div class="ttname"><a href="ntru__keypair_8h.html#a4e2c6da04c55e8c1b6c447f4cc9f1d6f">import_public_key</a></div><div class="ttdeci">void import_public_key(char const *const filename, fmpz_poly_t pub, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00132">ntru_keypair.c:132</a></div></div>
<div class="ttc" id="structkeypair_html_afa635c70f233d0b7449b4a17513646c4"><div class="ttname"><a href="structkeypair.html#afa635c70f233d0b7449b4a17513646c4">keypair::pub</a></div><div class="ttdeci">fmpz_poly_t pub</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00061">ntru_keypair.h:61</a></div></div>
<div class="ttc" id="structkeypair_html_a9e9805ad001216da53f2c57accb288e1"><div class="ttname"><a href="structkeypair.html#a9e9805ad001216da53f2c57accb288e1">keypair::priv</a></div><div class="ttdeci">fmpz_poly_t priv</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00051">ntru_keypair.h:51</a></div></div>
<div class="ttc" id="structkeypair_html"><div class="ttname"><a href="structkeypair.html">keypair</a></div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8h_source.html#l00046">ntru_keypair.h:46</a></div></div>
<div class="ttc" id="ntru__keypair_8h_html_a5279c4990bc22bb9e735fe36372a6786"><div class="ttname"><a href="ntru__keypair_8h.html#a5279c4990bc22bb9e735fe36372a6786">ntru_delete_keypair</a></div><div class="ttdeci">void ntru_delete_keypair(keypair *pair)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00197">ntru_keypair.c:197</a></div></div>
<div class="ttc" id="ntru__keypair_8h_html_afa29f14a14486d3f6b979ee900d7e738"><div class="ttname"><a href="ntru__keypair_8h.html#afa29f14a14486d3f6b979ee900d7e738">export_priv_key</a></div><div class="ttdeci">void export_priv_key(char const *const filename, fmpz_poly_t priv, ntru_params *params)</div><div class="ttdef"><b>Definition:</b> <a href="ntru__keypair_8c_source.html#l00111">ntru_keypair.c:111</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,193 +0,0 @@
<!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.7"/>
<title>post quantum cryptography: /home/travis/build/hasufell/pqc/src/ntru_mem.c 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">post quantum cryptography
</div>
<div id="projectbrief">Highly optimized implementation of the NTRUEncrypt algorithm</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></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_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ntru_mem.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>memory management
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="ntru__mem_8h_source.html">ntru_mem.h</a>&quot;</code><br />
<code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ntru_mem.c:</div>
<div class="dyncontent">
<div class="center"><img src="ntru__mem_8c__incl.png" border="0" usemap="#_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__mem_8c" alt=""/></div>
<map name="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__mem_8c" id="_2home_2travis_2build_2hasufell_2pqc_2src_2ntru__mem_8c">
<area shape="rect" id="node3" href="ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="5,101,96,131"/></map>
</div>
</div>
<p><a href="ntru__mem_8c_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a020790bf8b201fde92395cf975c0c691"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__mem_8c.html#a020790bf8b201fde92395cf975c0c691">ntru_malloc</a> (size_t size)</td></tr>
<tr class="separator:a020790bf8b201fde92395cf975c0c691"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37e0be4fd8d0b677a41c8287ef47885c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ntru__mem_8c.html#a37e0be4fd8d0b677a41c8287ef47885c">ntru_calloc</a> (size_t nmemb, size_t size)</td></tr>
<tr class="separator:a37e0be4fd8d0b677a41c8287ef47885c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>memory management </p>
<p>This file provides functions for memory management. </p>
<p>Definition in file <a class="el" href="ntru__mem_8c_source.html">ntru_mem.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a37e0be4fd8d0b677a41c8287ef47885c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* ntru_calloc </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>nmemb</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocate memory of size and return a void pointer. The memory is zeroed.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">nmemb</td><td>amount of blocks to allocate </td></tr>
<tr><td class="paramname">size</td><td>of the memory blocks to allocate in bytes </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void pointer to the beginning of the allocated memory block </dd></dl>
<p>Definition at line <a class="el" href="ntru__mem_8c_source.html#l00056">56</a> of file <a class="el" href="ntru__mem_8c_source.html">ntru_mem.c</a>.</p>
</div>
</div>
<a class="anchor" id="a020790bf8b201fde92395cf975c0c691"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* ntru_malloc </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocate memory of size and return a void pointer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">size</td><td>of the memory to allocate in bytes </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void pointer to the beginning of the allocated memory block </dd></dl>
<p>Definition at line <a class="el" href="ntru__mem_8c_source.html#l00038">38</a> of file <a class="el" href="ntru__mem_8c_source.html">ntru_mem.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 8 2014 23:33:23 for post quantum cryptography by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.7
</small></address>
</body>
</html>

View File

@ -1,3 +0,0 @@
<map id="/home/travis/build/hasufell/pqc/src/ntru_mem.c" name="/home/travis/build/hasufell/pqc/src/ntru_mem.c">
<area shape="rect" id="node3" href="$ntru__mem_8h.html" title="header for ntru_mem.c " alt="" coords="5,101,96,131"/>
</map>

View File

@ -1 +0,0 @@
8ef578098811e3b509f862e2e72452c4

Some files were not shown because too many files have changed in this diff Show More