> For the complete documentation index, see [llms.txt](https://docs.sec1.io/user-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sec1.io/user-docs/4-sast/2-java/missing-optimal-asymmetric-encryption-padding.md).

# Missing Optimal Asymmetric Encryption Padding (OAEP)

## Overview

* **Rule ID**: `java_lang_rsa_no_padding`
* **Applicable Languages**: Java
* **Weakness ID**: CWE-780

## Description

The RSA encryption algorithm is vulnerable without the use of Optimal Asymmetric Encryption Padding (OAEP). This vulnerability can result in security risks, including information disclosure.

## Remediation Guidelines

* **Always use** OAEP with RSA encryption to enhance security and mitigate vulnerabilities.

  ```java
  Cipher cipher = Cipher.getInstance("RSA/ECB/OAEPWithMD5AndMGF1Padding")
  ```

## References

* [**Java MessageDigest class**](https://docs.oracle.com/javase/8/docs/api/java/security/MessageDigest.html)
* [**CWE-780: Use of RSA Algorithm without OAEP**](https://cwe.mitre.org/data/definitions/780.html)
* [**OWASP Top 10: A02:2021 - Cryptographic Failures**](https://owasp.org/Top10/A02_2021-Cryptographic_Failures/)

## Configuration

To omit this rule during a scan, and to provide you with continuous 24/7 code-level scanning, you can employ our [**SAST TOOL**](https://scopy.sec1.io/login)
