| Server IP : 216.92.14.13 / Your IP : 216.73.216.171 Web Server : Apache System : Linux vps4089.pairvps.com 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 User : rmlac2fmr ( 1040637) PHP Version : 8.2.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/local/include/dovecot/ |
Upload File : |
#ifndef PKCS5_H
#define PKCS5_H 1
enum pkcs5_pbkdf_mode {
PKCS5_PBKDF1,
PKCS5_PBKDF2
};
/*
mode - v1.0 or v2.0
hash - hash_method_lookup return value
password - private password for generation
password_len - length of password in octets
salt - salt for generation
salt_len - length of salt in octets
iterations - number of iterations to hash (use at least 1000, a very large number => very very slow)
dk_len - number of bytes to return from derived key
result - buffer_t to hold the result, either use dynamic or make sure it fits dk_len
non-zero return value indicates that either iterations was less than 1 or dk_len was too large
Sample code:
buffer_t *result = t_buffer_create(256);
if (pkcs5_pbkdf(PKCS5_PBKDF2, hash_method_lookup("sha256"), "password", 8, "salt", 4, 4096, 256, result) != 0) { // error }
*/
int pkcs5_pbkdf(enum pkcs5_pbkdf_mode mode, const struct hash_method *hash,
const unsigned char *password, size_t password_len,
const unsigned char *salt, size_t salt_len,
unsigned int iterations, uint32_t dk_len,
buffer_t *result);
#endif