Share via


Größe des AesGcm-Authentifizierungstags auf macOS

AesGcm unter macOS unterstützt nur Authentifizierungstags mit 16 Byte (128 Bit), wenn Sie Encrypt oder Decrypt in .NET 8 und späteren Versionen verwenden.

Vorheriges Verhalten

Unter macOS unterstützte Encrypt- und Decrypt-Authentifizierungstaggrößen von 12 bis 16 Byte, sofern OpenSSL verfügbar war.

Darüber hinaus meldete die AesGcm.TagByteSizes-Eigenschaft, dass sie Größen von 12 bis einschließlich 16 Byte unterstützt.

Neues Verhalten

Unter macOS unterstützen Encrypt und Decrypt nur 16-Byte-Authentifizierungstags. Wenn Sie unter macOS eine kleinere Taggröße verwenden, wird zur Laufzeit ein ArgumentException ausgelöst.

Die Eigenschaft AesGcm.TagByteSizes gibt den Wert 16 als unterstützte Taggröße zurück.

Eingeführt in Version

.NET 8 Preview 1

Typ des Breaking Changes

Diese Änderung ist eine Verhaltensänderung.

Grund für die Änderung

Die AesGcm-Klasse unter macOS war bisher auf OpenSSL angewiesen, um unterstützt zu werden. OpenSSL ist eine externe Abhängigkeit, die getrennt von .NET installiert und konfiguriert werden muss. AesGcm verwendet jetzt Apples CryptoKit, um eine Implementierung des Advanced Encryption Standard mit Galois/Counter Mode (AES-GCM) bereitzustellen, sodass OpenSSL keine Abhängigkeit mehr für die Verwendung von AesGcm darstellt.

Die CryptoKit-Implementierung von AES-GCM unterstützt keine anderen Authentifizierungstaggrößen als 128 Bit (16 Byte).

Verwenden Sie 128-Bit-Authentifizierungstags mit AesGcm für macOS-Unterstützung.

Betroffene APIs