=pod

=head1 NAME

RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing attacks

=head1 SYNOPSIS

 #include <openssl/rsa.h>

 int RSA_blinding_on(RSA *rsa, BN_CTX *ctx);

 void RSA_blinding_off(RSA *rsa);

=head1 DESCRIPTION

RSA is vulnerable to timing attacks. In a setup where attackers can
measure the time of RSA decryption or signature operations, blinding
must be used to protect the RSA operation from that attack.

RSA_blinding_on() turns blinding on for key B<rsa> and generates a
random blinding factor. B<ctx> is B<NULL> or a pre-allocated and
initialized B<BN_CTX>. The random number generator must be seeded
prior to calling RSA_blinding_on().

RSA_blinding_off() turns blinding off and frees the memory used for
the blinding factor.

=head1 RETURN VALUES

RSA_blinding_on() returns 1 on success, and 0 if an error occurred.

RSA_blinding_off() returns no value.

=head1 SEE ALSO

L<rsa(3)|rsa(3)>, L<rand(3)|rand(3)>

=head1 HISTORY

RSA_blinding_on() and RSA_blinding_off() appeared in SSLeay 0.9.0.

=cut
