Aracılığıyla paylaş


macOS'ta AesGcm kimlik doğrulama etiketi boyutu

AesGcmmacOS üzerinde, .NET 8 ve sonraki sürümlerde veya Decrypt kullanırken Encrypt yalnızca 16 bayt (128 bit) kimlik doğrulama etiketlerini destekler.

Önceki davranış

OpenSSL kullanılabilir olması koşuluyla macOS'ta Encrypt ve Decrypt 12 ile 16 bayt arasında desteklenen kimlik doğrulama etiketi boyutları.

Ayrıca özelliği, AesGcm.TagByteSizes 12 ile 16 bayt arasında (dahil) boyutları desteklediğini bildirdi.

Yeni davranış

macOS'ta Encrypt ve Decrypt yalnızca 16 bayt kimlik doğrulama etiketlerini destekler. macOS'ta daha küçük bir etiket boyutu kullanıyorsanız, çalışma zamanında bir ArgumentException oluşturulur.

özelliği, AesGcm.TagByteSizes desteklenen etiket boyutu olarak 16 değerini döndürür.

Sürüm kullanıma sunulmuştur

.NET 8 Preview 1

Hataya neden olan değişikliğin türü

Bu değişiklik davranışsal bir değişikliktir.

Değişiklik nedeni

AesGcm macOS'ta sınıfı daha önce temel alınan destek için OpenSSL'ye dayanmıştı. OpenSSL, .NET'ten ayrı olarak yüklenmesi ve yapılandırılması gereken bir dış bağımlılıktır. AesGcm şimdi OpenSSL'nin artık kullanmak AesGcmiçin bir bağımlılık olmaması için Galois/Counter Mode (AES-GCM) ile Gelişmiş Şifreleme Standardı uygulamasını sağlamak için Apple'ın CryptoKit'ini kullanıyor.

AES-GCM'nin CryptoKit uygulaması, 128 bit (16 bayt) dışındaki kimlik doğrulama etiketi boyutlarını desteklemez.

macOS desteği için 128 bit kimlik doğrulama etiketlerini kullanın AesGcm .

Etkilenen API’ler