---
name: "RSA_blinding_on"
section: "3ssl"
platform: "linux"
package: "openssl"
version: "3.6.5-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/RSA_blinding_on"
---

# RSA\_blinding\_on(3ssl)

protect the RSA operation from timing attacks

## NAME

RSA\_blinding\_on, RSA\_blinding\_off - protect the RSA operation from timing attacks

## SYNOPSIS

```
 #include <openssl/rsa.h>
```

The following functions have been deprecated since OpenSSL 3.0, and can be hidden entirely by defining **OPENSSL\_API\_COMPAT** with a suitable version value, see **openssl\_user\_macros**(7):

```
 int RSA_blinding_on(RSA *rsa, BN_CTX *ctx);
 void RSA_blinding_off(RSA *rsa);
```

## DESCRIPTION

All of the functions described on this page are deprecated.

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 **rsa** and generates a random blinding factor. **ctx** is **NULL** or a preallocated and initialized **BN\_CTX**.

**RSA\_blinding\_off()** turns blinding off and frees the memory used for the blinding factor.

## RETURN VALUES

**RSA\_blinding\_on()** returns 1 on success, and 0 if an error occurred.

**RSA\_blinding\_off()** returns no value.

## HISTORY

All of these functions were deprecated in OpenSSL 3.0.

## COPYRIGHT

Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License").  You may not use this file except in compliance with the License.  You can obtain a copy in the file LICENSE in the source distribution or at \<https://www.openssl.org/source/license.html\>.
