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.
Önerilen eylem
macOS desteği için 128 bit kimlik doğrulama etiketlerini kullanın AesGcm .
Etkilenen API’ler
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin