CA5385: Usar un algoritmo de Rivest-Shamir-Adleman (RSA) con un tamaño de clave suficiente

Propiedad Value
Identificador de la regla CA5385
Título Usar un algoritmo de Rivest-Shamir-Adleman (RSA) con un tamaño de clave suficiente
Categoría Seguridad
La corrección interrumpe o no interrumpe Poco problemático
Habilitado de forma predeterminada en .NET 8 No

Causa

El uso del algoritmo de cifrado asimétrico RSA con un tamaño de clave inferior a 2048 de una de las siguientes maneras:

Descripción de la regla

Una clave RSA de menos de 2048 bits es más vulnerable a los ataques por fuerza bruta.

Cómo corregir infracciones

Cambie a un RSA con al menos 2048 de tamaño de clave y un algoritmo ECDH o ECDsa como alternativa.

Cuándo suprimir las advertencias

No se recomienda suprimir esta regla a menos que exista compatibilidad con las aplicaciones y los datos heredados.

Supresión de una advertencia

Si solo quiere suprimir una única infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.

#pragma warning disable CA5385
// The code that's violating the rule is on this line.
#pragma warning restore CA5385

Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad en none del archivo de configuración.

[*.{cs,vb}]
dotnet_diagnostic.CA5385.severity = none

Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.

Ejemplo

El fragmento de código siguiente muestra el patrón que detecta esta regla.

Infracción:

using System.Security.Cryptography;

class ExampleClass
{
    public void ExampleMethod()
    {
        RSACng rsaCng = new RSACng(1024);
    }
}

Solución:

using System.Security.Cryptography;

class ExampleClass
{
    public void ExampleMethod()
    {
        RSACng rsaCng = new RSACng(2048);
    }
}