1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3<title>RSA functions</title> 4<link href="doxygen.css" rel="stylesheet" type="text/css"> 5<link href="tabs.css" rel="stylesheet" type="text/css"> 6</head><body> 7<p> 8<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a> 9</p> 10<!-- end of header marker --> 11<!-- Generated by Doxygen 1.9.1 --> 12<script type="text/javascript" src="menudata.js"></script> 13<script type="text/javascript" src="menu.js"></script> 14<script type="text/javascript"> 15/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ 16$(function() { 17 initMenu('',false,false,'search.php','Search'); 18}); 19/* @license-end */</script> 20<div id="main-nav"></div> 21</div><!-- top --> 22<div class="header"> 23 <div class="summary"> 24<a href="#func-members">Functions</a> </div> 25 <div class="headertitle"> 26<div class="title">RSA functions</div> </div> 27</div><!--header--> 28<div class="contents"> 29<table class="memberdecls"> 30<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> 31Functions</h2></td></tr> 32<tr class="memitem:gac7196620864c48d1d6b8377ad8521a4e"><td class="memItemLeft" align="right" valign="top">RSA * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gac7196620864c48d1d6b8377ad8521a4e">RSA_new</a> (void)</td></tr> 33<tr class="separator:gac7196620864c48d1d6b8377ad8521a4e"><td class="memSeparator" colspan="2"> </td></tr> 34<tr class="memitem:gad184201d41deee1d1d684974ecc44e5c"><td class="memItemLeft" align="right" valign="top">RSA * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gad184201d41deee1d1d684974ecc44e5c">RSA_new_method</a> (ENGINE *engine)</td></tr> 35<tr class="separator:gad184201d41deee1d1d684974ecc44e5c"><td class="memSeparator" colspan="2"> </td></tr> 36<tr class="memitem:gaf0fbfb9641abf52a10e47c789bbba777"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gaf0fbfb9641abf52a10e47c789bbba777">RSA_free</a> (RSA *rsa)</td></tr> 37<tr class="separator:gaf0fbfb9641abf52a10e47c789bbba777"><td class="memSeparator" colspan="2"> </td></tr> 38<tr class="memitem:gadb710b16e5e5616f0693801cc60aa943"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gadb710b16e5e5616f0693801cc60aa943">RSA_up_ref</a> (RSA *rsa)</td></tr> 39<tr class="separator:gadb710b16e5e5616f0693801cc60aa943"><td class="memSeparator" colspan="2"> </td></tr> 40<tr class="memitem:ga8a0ab0eaf85ef01f1cc31329558fd37a"><td class="memItemLeft" align="right" valign="top">const RSA_METHOD * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#ga8a0ab0eaf85ef01f1cc31329558fd37a">RSA_get_method</a> (const RSA *rsa)</td></tr> 41<tr class="separator:ga8a0ab0eaf85ef01f1cc31329558fd37a"><td class="memSeparator" colspan="2"> </td></tr> 42<tr class="memitem:gaee6501b3b0fe2917a2e40adce6862395"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gaee6501b3b0fe2917a2e40adce6862395">RSA_set_method</a> (RSA *rsa, const RSA_METHOD *method)</td></tr> 43<tr class="separator:gaee6501b3b0fe2917a2e40adce6862395"><td class="memSeparator" colspan="2"> </td></tr> 44<tr class="memitem:gae2af4ebfadf6a1450b823dfc6ca50687"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gae2af4ebfadf6a1450b823dfc6ca50687">RSA_set_app_data</a> (RSA *rsa, void *arg)</td></tr> 45<tr class="separator:gae2af4ebfadf6a1450b823dfc6ca50687"><td class="memSeparator" colspan="2"> </td></tr> 46<tr class="memitem:gafcdc9f15c7075cd8434f0c7e59d3db5c"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rsa.html#gafcdc9f15c7075cd8434f0c7e59d3db5c">RSA_get_app_data</a> (const RSA *rsa)</td></tr> 47<tr class="separator:gafcdc9f15c7075cd8434f0c7e59d3db5c"><td class="memSeparator" colspan="2"> </td></tr> 48</table> 49<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> 50<p>See the <a class="el" href="page_rsa.html">RSA - public-key cryptography</a> for description and examples. </p> 51<h2 class="groupheader">Function Documentation</h2> 52<a id="gaf0fbfb9641abf52a10e47c789bbba777"></a> 53<h2 class="memtitle"><span class="permalink"><a href="#gaf0fbfb9641abf52a10e47c789bbba777">◆ </a></span>RSA_free()</h2> 54 55<div class="memitem"> 56<div class="memproto"> 57 <table class="memname"> 58 <tr> 59 <td class="memname">void RSA_free </td> 60 <td>(</td> 61 <td class="paramtype">RSA * </td> 62 <td class="paramname"><em>rsa</em></td><td>)</td> 63 <td></td> 64 </tr> 65 </table> 66</div><div class="memdoc"> 67<p>Free an allocation RSA object.</p> 68<dl class="params"><dt>Parameters</dt><dd> 69 <table class="params"> 70 <tr><td class="paramname">rsa</td><td>the RSA object to free. </td></tr> 71 </table> 72 </dd> 73</dl> 74 75</div> 76</div> 77<a id="gafcdc9f15c7075cd8434f0c7e59d3db5c"></a> 78<h2 class="memtitle"><span class="permalink"><a href="#gafcdc9f15c7075cd8434f0c7e59d3db5c">◆ </a></span>RSA_get_app_data()</h2> 79 80<div class="memitem"> 81<div class="memproto"> 82 <table class="memname"> 83 <tr> 84 <td class="memname">void* RSA_get_app_data </td> 85 <td>(</td> 86 <td class="paramtype">const RSA * </td> 87 <td class="paramname"><em>rsa</em></td><td>)</td> 88 <td></td> 89 </tr> 90 </table> 91</div><div class="memdoc"> 92<p>Get the application data for the RSA object.</p> 93<dl class="params"><dt>Parameters</dt><dd> 94 <table class="params"> 95 <tr><td class="paramname">rsa</td><td>the rsa object to get the parameter for</td></tr> 96 </table> 97 </dd> 98</dl> 99<dl class="section return"><dt>Returns</dt><dd>the data object </dd></dl> 100 101</div> 102</div> 103<a id="ga8a0ab0eaf85ef01f1cc31329558fd37a"></a> 104<h2 class="memtitle"><span class="permalink"><a href="#ga8a0ab0eaf85ef01f1cc31329558fd37a">◆ </a></span>RSA_get_method()</h2> 105 106<div class="memitem"> 107<div class="memproto"> 108 <table class="memname"> 109 <tr> 110 <td class="memname">const RSA_METHOD* RSA_get_method </td> 111 <td>(</td> 112 <td class="paramtype">const RSA * </td> 113 <td class="paramname"><em>rsa</em></td><td>)</td> 114 <td></td> 115 </tr> 116 </table> 117</div><div class="memdoc"> 118<p>Return the RSA_METHOD used for this RSA object.</p> 119<dl class="params"><dt>Parameters</dt><dd> 120 <table class="params"> 121 <tr><td class="paramname">rsa</td><td>the object to get the method from.</td></tr> 122 </table> 123 </dd> 124</dl> 125<dl class="section return"><dt>Returns</dt><dd>the method used for this RSA object. </dd></dl> 126 127</div> 128</div> 129<a id="gac7196620864c48d1d6b8377ad8521a4e"></a> 130<h2 class="memtitle"><span class="permalink"><a href="#gac7196620864c48d1d6b8377ad8521a4e">◆ </a></span>RSA_new()</h2> 131 132<div class="memitem"> 133<div class="memproto"> 134 <table class="memname"> 135 <tr> 136 <td class="memname">RSA* RSA_new </td> 137 <td>(</td> 138 <td class="paramtype">void </td> 139 <td class="paramname"></td><td>)</td> 140 <td></td> 141 </tr> 142 </table> 143</div><div class="memdoc"> 144<p>Same as <a class="el" href="group__hcrypto__rsa.html#gad184201d41deee1d1d684974ecc44e5c">RSA_new_method()</a> using NULL as engine.</p> 145<dl class="section return"><dt>Returns</dt><dd>a newly allocated RSA object. Free with <a class="el" href="group__hcrypto__rsa.html#gaf0fbfb9641abf52a10e47c789bbba777">RSA_free()</a>. </dd></dl> 146 147</div> 148</div> 149<a id="gad184201d41deee1d1d684974ecc44e5c"></a> 150<h2 class="memtitle"><span class="permalink"><a href="#gad184201d41deee1d1d684974ecc44e5c">◆ </a></span>RSA_new_method()</h2> 151 152<div class="memitem"> 153<div class="memproto"> 154 <table class="memname"> 155 <tr> 156 <td class="memname">RSA* RSA_new_method </td> 157 <td>(</td> 158 <td class="paramtype">ENGINE * </td> 159 <td class="paramname"><em>engine</em></td><td>)</td> 160 <td></td> 161 </tr> 162 </table> 163</div><div class="memdoc"> 164<p>Allocate a new RSA object using the engine, if NULL is specified as the engine, use the default RSA engine as returned by ENGINE_get_default_RSA().</p> 165<dl class="params"><dt>Parameters</dt><dd> 166 <table class="params"> 167 <tr><td class="paramname">engine</td><td>Specific what ENGINE RSA provider should be used.</td></tr> 168 </table> 169 </dd> 170</dl> 171<dl class="section return"><dt>Returns</dt><dd>a newly allocated RSA object. Free with <a class="el" href="group__hcrypto__rsa.html#gaf0fbfb9641abf52a10e47c789bbba777">RSA_free()</a>. </dd></dl> 172 173</div> 174</div> 175<a id="gae2af4ebfadf6a1450b823dfc6ca50687"></a> 176<h2 class="memtitle"><span class="permalink"><a href="#gae2af4ebfadf6a1450b823dfc6ca50687">◆ </a></span>RSA_set_app_data()</h2> 177 178<div class="memitem"> 179<div class="memproto"> 180 <table class="memname"> 181 <tr> 182 <td class="memname">int RSA_set_app_data </td> 183 <td>(</td> 184 <td class="paramtype">RSA * </td> 185 <td class="paramname"><em>rsa</em>, </td> 186 </tr> 187 <tr> 188 <td class="paramkey"></td> 189 <td></td> 190 <td class="paramtype">void * </td> 191 <td class="paramname"><em>arg</em> </td> 192 </tr> 193 <tr> 194 <td></td> 195 <td>)</td> 196 <td></td><td></td> 197 </tr> 198 </table> 199</div><div class="memdoc"> 200<p>Set the application data for the RSA object.</p> 201<dl class="params"><dt>Parameters</dt><dd> 202 <table class="params"> 203 <tr><td class="paramname">rsa</td><td>the rsa object to set the parameter for </td></tr> 204 <tr><td class="paramname">arg</td><td>the data object to store</td></tr> 205 </table> 206 </dd> 207</dl> 208<dl class="section return"><dt>Returns</dt><dd>1 on success. </dd></dl> 209 210</div> 211</div> 212<a id="gaee6501b3b0fe2917a2e40adce6862395"></a> 213<h2 class="memtitle"><span class="permalink"><a href="#gaee6501b3b0fe2917a2e40adce6862395">◆ </a></span>RSA_set_method()</h2> 214 215<div class="memitem"> 216<div class="memproto"> 217 <table class="memname"> 218 <tr> 219 <td class="memname">int RSA_set_method </td> 220 <td>(</td> 221 <td class="paramtype">RSA * </td> 222 <td class="paramname"><em>rsa</em>, </td> 223 </tr> 224 <tr> 225 <td class="paramkey"></td> 226 <td></td> 227 <td class="paramtype">const RSA_METHOD * </td> 228 <td class="paramname"><em>method</em> </td> 229 </tr> 230 <tr> 231 <td></td> 232 <td>)</td> 233 <td></td><td></td> 234 </tr> 235 </table> 236</div><div class="memdoc"> 237<p>Set a new method for the RSA keypair.</p> 238<dl class="params"><dt>Parameters</dt><dd> 239 <table class="params"> 240 <tr><td class="paramname">rsa</td><td>rsa parameter. </td></tr> 241 <tr><td class="paramname">method</td><td>the new method for the RSA parameter.</td></tr> 242 </table> 243 </dd> 244</dl> 245<dl class="section return"><dt>Returns</dt><dd>1 on success. </dd></dl> 246 247</div> 248</div> 249<a id="gadb710b16e5e5616f0693801cc60aa943"></a> 250<h2 class="memtitle"><span class="permalink"><a href="#gadb710b16e5e5616f0693801cc60aa943">◆ </a></span>RSA_up_ref()</h2> 251 252<div class="memitem"> 253<div class="memproto"> 254 <table class="memname"> 255 <tr> 256 <td class="memname">int RSA_up_ref </td> 257 <td>(</td> 258 <td class="paramtype">RSA * </td> 259 <td class="paramname"><em>rsa</em></td><td>)</td> 260 <td></td> 261 </tr> 262 </table> 263</div><div class="memdoc"> 264<p>Add an extra reference to the RSA object. The object should be free with <a class="el" href="group__hcrypto__rsa.html#gaf0fbfb9641abf52a10e47c789bbba777">RSA_free()</a> to drop the reference.</p> 265<dl class="params"><dt>Parameters</dt><dd> 266 <table class="params"> 267 <tr><td class="paramname">rsa</td><td>the object to add reference counting too.</td></tr> 268 </table> 269 </dd> 270</dl> 271<dl class="section return"><dt>Returns</dt><dd>the current reference count, can't safely be used except for debug printing. </dd></dl> 272 273</div> 274</div> 275</div><!-- contents --> 276<hr size="1"><address style="text-align: right;"><small> 277Generated on Tue Nov 15 2022 14:04:26 for Heimdal crypto library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.9.1</small></address> 278</body> 279</html> 280