xref: /openssl/doc/man7/EVP_KDF-PVKKDF.pod (revision f5e602b5)
1=pod
2
3=head1 NAME
4
5EVP_KDF-PVKKDF - The PVK EVP_KDF implementation
6
7=head1 DESCRIPTION
8
9Support for computing the B<PVK KDF> PIN-based KDF through the B<EVP_KDF>
10API.
11
12The EVP_KDF-PVKKDF algorithm implements a PVK PIN-based key
13derivation function; it derives a key from a password using a salt.
14
15=head2 Identity
16
17"PVKKDF" is the name for this implementation; it
18can be used with the EVP_KDF_fetch() function.
19
20=head2 Supported parameters
21
22The supported parameters are:
23
24=over 4
25
26=item "pass" (B<OSSL_KDF_PARAM_PASSWORD>) <octet string>
27
28=item "salt" (B<OSSL_KDF_PARAM_SALT>) <octet string>
29
30=item "properties" (B<OSSL_KDF_PARAM_PROPERTIES>) <UTF8 string>
31
32=item "digest" (B<OSSL_KDF_PARAM_DIGEST>) <UTF8 string>
33
34These parameters work as described in L<EVP_KDF(3)/PARAMETERS>.
35
36=back
37
38=head1 NOTES
39
40A typical application of this algorithm is to derive keying material for an
41encryption algorithm from a password in the "pass" and a salt in "salt".
42
43No assumption is made regarding the given password; it is simply treated as a
44byte sequence.
45
46The legacy provider needs to be available in order to access this algorithm.
47
48=head1 SEE ALSO
49
50L<EVP_KDF(3)>,
51L<EVP_KDF_CTX_new(3)>,
52L<EVP_KDF_CTX_free(3)>,
53L<EVP_KDF_CTX_set_params(3)>,
54L<EVP_KDF_derive(3)>,
55L<EVP_KDF(3)/PARAMETERS>,
56L<OSSL_PROVIDER-legacy(7)>
57
58=head1 HISTORY
59
60This functionality was added in OpenSSL 3.2.
61
62=head1 COPYRIGHT
63
64Copyright 2021 The OpenSSL Project Authors. All Rights Reserved.
65
66Licensed under the Apache License 2.0 (the "License").  You may not use
67this file except in compliance with the License.  You can obtain a copy
68in the file LICENSE in the source distribution or at
69L<https://www.openssl.org/source/license.html>.
70
71=cut
72