xref: /freebsd/crypto/openssl/doc/man3/RSA_blinding_on.pod (revision 5ca8e32633c4ffbbcd6762e5888b6a4ba0708c6c)
1=pod
2
3=head1 NAME
4
5RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing attacks
6
7=head1 SYNOPSIS
8
9 #include <openssl/rsa.h>
10
11The following functions have been deprecated since OpenSSL 3.0, and can be
12hidden entirely by defining B<OPENSSL_API_COMPAT> with a suitable version value,
13see L<openssl_user_macros(7)>:
14
15 int RSA_blinding_on(RSA *rsa, BN_CTX *ctx);
16
17 void RSA_blinding_off(RSA *rsa);
18
19=head1 DESCRIPTION
20
21All of the functions described on this page are deprecated.
22
23RSA is vulnerable to timing attacks. In a setup where attackers can
24measure the time of RSA decryption or signature operations, blinding
25must be used to protect the RSA operation from that attack.
26
27RSA_blinding_on() turns blinding on for key B<rsa> and generates a
28random blinding factor. B<ctx> is B<NULL> or a preallocated and
29initialized B<BN_CTX>.
30
31RSA_blinding_off() turns blinding off and frees the memory used for
32the blinding factor.
33
34=head1 RETURN VALUES
35
36RSA_blinding_on() returns 1 on success, and 0 if an error occurred.
37
38RSA_blinding_off() returns no value.
39
40=head1 HISTORY
41
42All of these functions were deprecated in OpenSSL 3.0.
43
44=head1 COPYRIGHT
45
46Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
47
48Licensed under the Apache License 2.0 (the "License").  You may not use
49this file except in compliance with the License.  You can obtain a copy
50in the file LICENSE in the source distribution or at
51L<https://www.openssl.org/source/license.html>.
52
53=cut
54