CA5385: RSA-Algorithmus (Rivest – Shamir – Adleman) mit ausreichender Schlüsselgröße verwenden

Eigenschaft Wert
Regel-ID CA5385
Titel RSA-Algorithmus (Rivest – Shamir – Adleman) mit ausreichender Schlüsselgröße verwenden
Kategorie Security
Fix führt oder führt nicht zur Unterbrechung Nicht unterbrechend
Standardmäßig in .NET 8 aktiviert Nein

Ursache

Die Verwendung des asymmetrischen RSA-Verschlüsselungsalgorithmus mit einer Schlüsselgröße von weniger als 2048 Bits auf eine der folgenden Arten:

Regelbeschreibung

Ein RSA-Schlüssel, der kleiner als 2048 Bits ist, ist anfälliger für Brute-Force-Angriffe.

Behandeln von Verstößen

Wechseln Sie stattdessen zu einem RSA-Schlüssel mit einer Größe von mindestens 2048 Bits oder zu einem ECDH- oder ECDSA-Algorithmus.

Wann sollten Warnungen unterdrückt werden?

Es wird nicht empfohlen, diese Regel zu unterdrücken, solange keine Gründe im Hinblick auf die Kompatibilität mit Legacyanwendungen und -daten vorliegen.

Unterdrücken einer Warnung

Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.

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

Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdatei auf none fest.

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

Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.

Beispiel

Der folgende Ausschnitt veranschaulicht das von dieser Regel erkannte Muster.

Verstoß:

using System.Security.Cryptography;

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

Lösung:

using System.Security.Cryptography;

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