]>
Commit | Line | Data |
---|---|---|
6a2da303 PY |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | BN_security_bits - returns bits of security based on given numbers | |
6 | ||
7 | =head1 SYNOPSIS | |
8 | ||
9 | #include <openssl/bn.h> | |
10 | ||
11 | int BN_security_bits(int L, int N); | |
12 | ||
13 | =head1 DESCRIPTION | |
14 | ||
15 | BN_security_bits() returns the number of bits of security provided by a | |
16 | specific algorithm and a particular key size. The bits of security is | |
17 | defined in NIST SP800-57. Currently, BN_security_bits() support two types | |
18 | of asymmetric algorithms: the FFC (Finite Field Cryptography) and IFC | |
19 | (Integer Factorization Cryptography). For FFC, e.g., DSA and DH, both | |
20 | parameters B<L> and B<N> are used to decide the bits of security, where | |
21 | B<L> is the size of the public key and B<N> is the size of the private | |
22 | key. For IFC, e.g., RSA, only B<L> is used and it's commonly considered | |
23 | to be the key size (modulus). | |
24 | ||
25 | =head1 RETURN VALUES | |
26 | ||
27 | Number of security bits. | |
28 | ||
29 | =head1 NOTES | |
30 | ||
31 | ECC (Elliptic Curve Cryptography) is not covered by the BN_security_bits() | |
32 | function. The symmetric algorithms are not covered neither. | |
33 | ||
6a2da303 PY |
34 | =head1 SEE ALSO |
35 | ||
36 | L<DH_security_bits(3)>, L<DSA_security_bits(3)>, L<RSA_security_bits(3)> | |
37 | ||
b5c4bbbe JL |
38 | =head1 HISTORY |
39 | ||
40 | The BN_security_bits() function was added in OpenSSL 1.1.0. | |
41 | ||
6a2da303 PY |
42 | =head1 COPYRIGHT |
43 | ||
b5c4bbbe | 44 | Copyright 2017-2019 The OpenSSL Project Authors. All Rights Reserved. |
6a2da303 | 45 | |
4746f25a | 46 | Licensed under the Apache License 2.0 (the "License"). You may not use |
6a2da303 PY |
47 | this file except in compliance with the License. You can obtain a copy |
48 | in the file LICENSE in the source distribution or at | |
49 | L<https://www.openssl.org/source/license.html>. | |
50 | ||
51 | =cut |