CreateEncryptor-methoden genereren uitzondering voor onjuiste feedbackgrootte

De CreateEncryptor en CreateDecryptor methoden voor AesCng en TripleDESCng genereren nu een CryptographicException wanneer het objectexemplaar wordt gebruikt met een CNG-gepreserveerde (of benoemde) sleutel voor de Cipher Feedback (CFB) modus, met een andere feedbackgrootte dan acht (CFB8).

Vorig gedrag

Eerder konden deze klassen CFB128 (AesCng) of CFB64 (TripleDESCng) worden geselecteerd. Als de sleutel echter een persistente sleutel was, werd de berekening altijd uitgevoerd alsof CFB8 was geselecteerd.

Nieuw gedrag

De CreateEncryptor en CreateDecryptor methoden gooien een CryptographicException wanneer aan beide van de volgende voorwaarden wordt voldaan:

  • CFB128- of CFB64-modus is geselecteerd (dat wil zeggen, SymmetricAlgorithm.FeedbackSize is ingesteld op 128 of 64).
  • Het exemplaar wordt ondersteund door een persistente sleutel.

Geïntroduceerde versie

.NET 6

Type van brekende verandering

Deze wijziging kan van invloed zijn op binaire compatibiliteit.

Reden voor wijziging

Deze wijziging is geïntroduceerd om aan te geven dat het aangevraagde werk niet correct kan worden uitgevoerd.

Als u deze uitzondering tegenkomt, kunt u overwegen om over te stappen van CFB128 of CFB64 naar CFB8. Als u die switch maakt, worden resultaten geproduceerd die compatibel zijn met het gedrag in eerdere versies.

Betreffende API's