Tamanho da marca de autenticação do AesGcm no macOS
AesGcm no macOS dá suporte apenas a marcas de autenticação de 16 bytes (128 bits) ao usar Encrypt ou Decrypt no .NET 8 e em versões posteriores.
Comportamento anterior
No macOS, Encrypt e Decrypt davam suporte a tamanhos de marca de autenticação que variavam de 12 a 16 bytes, desde que o OpenSSL estivesse disponível.
Além disso, a propriedade AesGcm.TagByteSizes informava que tinha suporte para tamanhos que variavam de 12 a 16 bytes, inclusive.
Novo comportamento
No macOS, Encrypt e Decrypt dão suporte apenas a marcas de autenticação de 16 bytes. Se você usar um tamanho de marca menor no macOS, um ArgumentException será gerado em tempo de execução.
A propriedade AesGcm.TagByteSizes retorna um valor de 16 como tamanho de marca com suporte.
Versão introduzida
.NET 8 versão prévia 1
Tipo de alteração interruptiva
Esta é uma alteração comportamental.
Motivo da alteração
A classe AesGcm no macOS dependia do OpenSSL para suporte subjacente. O OpenSSL é uma dependência externa que precisava ser instalada e configurada separadamente do .NET. Agora, AesGcm usa o CryptoKit da Apple para fornecer uma implementação do AES-GCM (AES com Modo Galois/Contador) para que o OpenSSL não seja mais uma dependência para usar o AesGcm.
A implementação do CryptoKit do AES-GCM não dá suporte a tamanhos de marca de autenticação diferentes de 128 bits (16 bytes).
Ação recomendada
Use marcas de autenticação de 128 bits com AesGcm para dar suporte ao macOS.
APIs afetadas
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de