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>hcrypto miscellaneous 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">hcrypto miscellaneous 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:ga1533d8d57db97daa0ecfe780afb0f716"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__misc.html#ga1533d8d57db97daa0ecfe780afb0f716">PKCS5_PBKDF2_HMAC</a> (const void *password, size_t password_len, const void *salt, size_t salt_len, unsigned long iter, const EVP_MD *md, size_t keylen, void *key)</td></tr> 33<tr class="separator:ga1533d8d57db97daa0ecfe780afb0f716"><td class="memSeparator" colspan="2"> </td></tr> 34<tr class="memitem:gaece1627cc5535ef7b5e86e2f5a3eec04"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__misc.html#gaece1627cc5535ef7b5e86e2f5a3eec04">PKCS5_PBKDF2_HMAC_SHA1</a> (const void *password, size_t password_len, const void *salt, size_t salt_len, unsigned long iter, size_t keylen, void *key)</td></tr> 35<tr class="separator:gaece1627cc5535ef7b5e86e2f5a3eec04"><td class="memSeparator" colspan="2"> </td></tr> 36</table> 37<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> 38<h2 class="groupheader">Function Documentation</h2> 39<a id="ga1533d8d57db97daa0ecfe780afb0f716"></a> 40<h2 class="memtitle"><span class="permalink"><a href="#ga1533d8d57db97daa0ecfe780afb0f716">◆ </a></span>PKCS5_PBKDF2_HMAC()</h2> 41 42<div class="memitem"> 43<div class="memproto"> 44 <table class="memname"> 45 <tr> 46 <td class="memname">int PKCS5_PBKDF2_HMAC </td> 47 <td>(</td> 48 <td class="paramtype">const void * </td> 49 <td class="paramname"><em>password</em>, </td> 50 </tr> 51 <tr> 52 <td class="paramkey"></td> 53 <td></td> 54 <td class="paramtype">size_t </td> 55 <td class="paramname"><em>password_len</em>, </td> 56 </tr> 57 <tr> 58 <td class="paramkey"></td> 59 <td></td> 60 <td class="paramtype">const void * </td> 61 <td class="paramname"><em>salt</em>, </td> 62 </tr> 63 <tr> 64 <td class="paramkey"></td> 65 <td></td> 66 <td class="paramtype">size_t </td> 67 <td class="paramname"><em>salt_len</em>, </td> 68 </tr> 69 <tr> 70 <td class="paramkey"></td> 71 <td></td> 72 <td class="paramtype">unsigned long </td> 73 <td class="paramname"><em>iter</em>, </td> 74 </tr> 75 <tr> 76 <td class="paramkey"></td> 77 <td></td> 78 <td class="paramtype">const EVP_MD * </td> 79 <td class="paramname"><em>md</em>, </td> 80 </tr> 81 <tr> 82 <td class="paramkey"></td> 83 <td></td> 84 <td class="paramtype">size_t </td> 85 <td class="paramname"><em>keylen</em>, </td> 86 </tr> 87 <tr> 88 <td class="paramkey"></td> 89 <td></td> 90 <td class="paramtype">void * </td> 91 <td class="paramname"><em>key</em> </td> 92 </tr> 93 <tr> 94 <td></td> 95 <td>)</td> 96 <td></td><td></td> 97 </tr> 98 </table> 99</div><div class="memdoc"> 100<p>As descriped in PKCS5, convert a password, salt, and iteration counter into a crypto key.</p> 101<dl class="params"><dt>Parameters</dt><dd> 102 <table class="params"> 103 <tr><td class="paramname">password</td><td>Password. </td></tr> 104 <tr><td class="paramname">password_len</td><td>Length of password. </td></tr> 105 <tr><td class="paramname">salt</td><td>Salt </td></tr> 106 <tr><td class="paramname">salt_len</td><td>Length of salt. </td></tr> 107 <tr><td class="paramname">iter</td><td>iteration counter. </td></tr> 108 <tr><td class="paramname">md</td><td>the digest function. </td></tr> 109 <tr><td class="paramname">keylen</td><td>the output key length. </td></tr> 110 <tr><td class="paramname">key</td><td>the output key.</td></tr> 111 </table> 112 </dd> 113</dl> 114<dl class="section return"><dt>Returns</dt><dd>1 on success, non 1 on failure. </dd></dl> 115 116</div> 117</div> 118<a id="gaece1627cc5535ef7b5e86e2f5a3eec04"></a> 119<h2 class="memtitle"><span class="permalink"><a href="#gaece1627cc5535ef7b5e86e2f5a3eec04">◆ </a></span>PKCS5_PBKDF2_HMAC_SHA1()</h2> 120 121<div class="memitem"> 122<div class="memproto"> 123 <table class="memname"> 124 <tr> 125 <td class="memname">int PKCS5_PBKDF2_HMAC_SHA1 </td> 126 <td>(</td> 127 <td class="paramtype">const void * </td> 128 <td class="paramname"><em>password</em>, </td> 129 </tr> 130 <tr> 131 <td class="paramkey"></td> 132 <td></td> 133 <td class="paramtype">size_t </td> 134 <td class="paramname"><em>password_len</em>, </td> 135 </tr> 136 <tr> 137 <td class="paramkey"></td> 138 <td></td> 139 <td class="paramtype">const void * </td> 140 <td class="paramname"><em>salt</em>, </td> 141 </tr> 142 <tr> 143 <td class="paramkey"></td> 144 <td></td> 145 <td class="paramtype">size_t </td> 146 <td class="paramname"><em>salt_len</em>, </td> 147 </tr> 148 <tr> 149 <td class="paramkey"></td> 150 <td></td> 151 <td class="paramtype">unsigned long </td> 152 <td class="paramname"><em>iter</em>, </td> 153 </tr> 154 <tr> 155 <td class="paramkey"></td> 156 <td></td> 157 <td class="paramtype">size_t </td> 158 <td class="paramname"><em>keylen</em>, </td> 159 </tr> 160 <tr> 161 <td class="paramkey"></td> 162 <td></td> 163 <td class="paramtype">void * </td> 164 <td class="paramname"><em>key</em> </td> 165 </tr> 166 <tr> 167 <td></td> 168 <td>)</td> 169 <td></td><td></td> 170 </tr> 171 </table> 172</div><div class="memdoc"> 173<p>As descriped in PKCS5, convert a password, salt, and iteration counter into a crypto key.</p> 174<dl class="params"><dt>Parameters</dt><dd> 175 <table class="params"> 176 <tr><td class="paramname">password</td><td>Password. </td></tr> 177 <tr><td class="paramname">password_len</td><td>Length of password. </td></tr> 178 <tr><td class="paramname">salt</td><td>Salt </td></tr> 179 <tr><td class="paramname">salt_len</td><td>Length of salt. </td></tr> 180 <tr><td class="paramname">iter</td><td>iteration counter. </td></tr> 181 <tr><td class="paramname">keylen</td><td>the output key length. </td></tr> 182 <tr><td class="paramname">key</td><td>the output key.</td></tr> 183 </table> 184 </dd> 185</dl> 186<dl class="section return"><dt>Returns</dt><dd>1 on success, non 1 on failure. </dd></dl> 187 188</div> 189</div> 190</div><!-- contents --> 191<hr size="1"><address style="text-align: right;"><small> 192Generated 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> 193</body> 194</html> 195