FERRAMENTAS LINUX: O Linux 7.3 Apresenta as Novas APIs de Criptografia AES — Mais Performance a Caminho

segunda-feira, 24 de agosto de 2026

O Linux 7.3 Apresenta as Novas APIs de Criptografia AES — Mais Performance a Caminho



Novas APIs de criptografia AES chegam ao Linux 7.3 prometendo mais performance e menos código duplicado. Entenda o que muda e o que esperar.

 

O kernel Linux 7.3, que deve ser lançado ainda em 2026 e possui grandes chances de se tornar a versão LTS (Long Term Support) deste ano, acaba de receber uma mudança significativa em sua infraestrutura de criptografia. 

O engenheiro do Google Eric Biggers, conhecido por suas contribuições de performance ao subsistema de criptografia do kernel, integrou um conjunto de novas APIs de biblioteca para os modos de criptografia AES mais utilizados no kernel.

Mas o que isso significa na prática ? Mais performance, menos código repetido e uma base mais sólida para otimizações futuras. Vamos entender todos os detalhes.


O que mudou no Linux 7.3 ?


Novas APIs para os principais modos AES


Foram adicionadas as APIs de biblioteca para praticamente todos os modos de operação AES empregados pelo kernel:


Fonte: LWN e lista de discussão do kernel

Antes dessa mudança, os desenvolvedores que precisavam usar esses modos AES dentro do kernel precisavam recorrer às APIs crypto_skcipher ou crypto_aead.


Por que as APIs antigas eram problemáticas ?

Eric Biggers explicou no pull request que as APIs existentes são "difíceis de usar e ineficientes". 

A falta de suporte adequado em biblioteca para esses modos era considerada a principal lacuna na infraestrutura de criptografia do kernel.


Na prática, isso significava que:


  • Desenvolvedores precisavam escrever muito código "cola" (glue code) para integrar os modos AES.
  • A performance ficava aquém do potencial, especialmente em arquiteturas com aceleração por hardware (como AES-NI da Intel/AMD).

  • Havia duplicação de código entre diferentes subsistemas do kernel.


Produto Afiliado


Chega de sofrer com a falta de portas USB-A no seu notebook ou tablet! Com o Anker Adaptador OTG USB-C para USB 3.0 (pacote com 2), você expande as possibilidades do seu dispositivo de forma simples, rápida e inteligente.

Transforme qualquer porta USB-C em uma porta USB-A universal e conecte pendrives, mouses, teclados, HDs externos, impressoras e muito mais. E o melhor: com velocidade de transferência de até 5 Gbps, você move filmes, músicas e arquivos pesados em segundos.






Por que este é o adaptador que você precisa ?


🖥️ Design Ultra-Fino: Conecte dois adaptadores lado a lado nas portas USB-C do seu MacBook Pro ou notebook sem nenhum bloqueio.

🔩 Construção Premium: Feito em alumínio Space Gray resistente a arranhões, combinando perfeitamente com seus dispositivos e aguentando o uso do dia a dia.

💪 Durabilidade Extrema: Os conectores são projetados para suportar mais de 10.000 conexões e desconexões – ou seja, um adaptador para a vida toda.

✅ Conexão Confirmada: Um pequeno LED indica que o adaptador foi conectado com sucesso ao seu dispositivo.

🌍 Sustentável: Produto certificado com características sustentáveis reconhecidas por certificações confiáveis.

Por que escolher a Anker?
Junte-se aos mais de 55 milhões de usuários que confiam na tecnologia líder de mercado da Anker. Com 4,7 de 5 estrelas em mais de 23 mil avaliações na Amazon, este é um produto que entrega o que promete.

"Ótimo adaptador, excelente qualidade." – Avaliação de cliente.


Anker Adaptador otg USB-C para USB 3.0 pacote com 2, adaptador usb tipo c -> https://link.amazon/B0jcKV5Qa

Eu ganho uma comissão quando você faz uma compra.



Os benefícios diretos das novas APIs


1. Mais performance no horizonte

Embora a mudança imediata seja a adição das APIs em si, o verdadeiro ganho de performance virá nos ciclos seguintes. O plano é migrar o código otimizado por arquitetura (aqueles em arch/*/crypto/aes*) para dentro dessas novas bibliotecas.

Isso eliminará uma grande quantidade de código redundante e permitirá que todos os usuários desses modos AES se beneficiem das otimizações específicas de cada arquitetura (x86, ARM, etc.) sem esforço adicional.

"A maioria dos benefícios — redução de linhas de código, melhorias de performance — virá em ciclos posteriores, quando o código otimizado por arquitetura for migrado para a biblioteca e os usuários das APIs crypto_skcipher e crypto_aead forem atualizados para usar as novas APIs."

— Eric Biggers, Google


 2. Redução drástica de código duplicado


O patch series que implementa essas mudanças já mostra o impacto: 937 linhas adicionadas no arquivo crypto/aes.c e dezenas de arquivos em todo o kernel sendo convertidos para usar as novas bibliotecas.

Subsistemas como o fscrypt (criptografia de arquivos), macsec (segurança em redes), SMB (compartilhamento de arquivos), BPF (programas eBPF com a criptografia) e Wi-Fi (mac80211) já estão sendo migrados.


3. APIs mais limpas e documentadas


As novas APIs foram completamente documentadas e seguem um design consistente para todos os modos. Isso facilita a vida dos desenvolvedores de kernel que precisam implementar criptografia em seus subsistemas.


O que vem por aí ?


Migração gradual ao longo de vários ciclos

Eric Biggers enfatizou que não era viável fazer tudo em um único ciclo. Os modos AES são interligados e dependem uns dos outros, especialmente no código otimizado por arquitetura. Por isso, a estratégia é:

  • 1. Linux 7.3 — Adicionar as novas APIs de biblioteca e integrá-las à API tradicional de criptografia (com prioridade 110 por enquanto).
  • 2. Linux 7.4 em diante — Converter gradualmente os usuários das APIs antigas para as novas e migrar o código otimizado por arquitetura.

Testes e validação


As novas APIs já estão cobertas pelos autotestes da API tradicional de criptografia (crypto_skcipher e crypto_aead), garantindo que funcionam corretamente em sistemas que não possuem código otimizado por arquitetura.


Contexto: AF_ALG e a restrição do acesso userspace


Vale mencionar que o Linux 7.3 também traz mudanças no AF_ALG — a interface que permitia que programas em espaço de usuário chamassem diretamente as APIs de criptografia do kernel.

O AF_ALG foi depreciado no Linux 7.2 e, no 7.3, está sendo ainda mais restringido com um novo sysctl knob chamado af_alg_restrict. O motivo ? Segurança — o AF_ALG provou ser uma "massive attack surface" (superfície de ataque massiva).

Isso significa que as novas APIs AES são voltadas exclusivamente para uso dentro do kernel, enquanto o acesso de usuário à criptografia do kernel está sendo progressivamente desativado por questões de segurança.



Perguntas Frequentes (FAQ)


1. As novas APIs AES vão melhorar a performance do meu sistema imediatamente após atualizar para o Linux 7.3?

Não imediatamente. O Linux 7.3 adiciona as novas APIs de biblioteca, mas os ganhos reais de performance virão nos ciclos seguintes (7.4 em diante), quando o código otimizado por arquitetura for migrado para dentro dessas bibliotecas. A boa notícia é que a fundação já está pronta.


2. Eu, como usuário comum, preciso fazer algo para aproveitar as novas APIs?

Não. Essa é uma mudança interna do kernel, voltada para desenvolvedores e subsistemas do kernel. Usuários finais se beneficiarão automaticamente quando as otimizações forem implementadas em versões futuras. Apenas mantenha seu kernel atualizado.


3. O que acontece com o AF_ALG? Posso continuar usando criptografia do kernel a partir do userspace?

O AF_ALG está sendo restringido no Linux 7.3 com um novo sysctl knob (af_alg_restrict). Ele já foi depreciado no Linux 7.2 por razões de segurança. A recomendação é que aplicações em userspace utilizem bibliotecas criptográficas em espaço de usuário (como OpenSSL, libsodium, etc.) em vez de depender do AF_ALG.


Checklist: Como aproveitar as novas APIs AES no Linux 7.3

Copie e cole este checklist para acompanhar a migração:


✅ VERIFICAR A VERSÃO DO KERNEL.
   □ uname -r → deve mostrar 7.3 ou superior.

✅ CONFERIR OS NOVOS ARQUIVOS DE CABEÇALHO.
    ls /usr/include/crypto/aes-*.h
  □ aes-ecb.h, aes-cbc.h, aes-ctr.h, aes-gcm.h, aes-ccm.h, aes-xts.h

✅ IDENTIFICAR USOS DE crypto_skcipher / crypto_aead NO SEU CÓDIGO
    grep -r "crypto_skcipher" --include="*.c" --include="*.h"
  □ grep -r "crypto_aead" --include="*.c" --include="*.h"

✅ CONSULTAR A DOCUMENTAÇÃO DAS NOVAS APIS.
   Documentation/crypto/libcrypto-auth-encryption.rst.

✅ TESTAR COM OS SELF-TESTS DO KERNEL.
    CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=n.
   Verificar dmesg em busca de falhas nos testes.

✅ ACOMPANHAR OS PULL REQUESTS FUTUROS.
   Acompanhar a lista linux-crypto@vger.kernel.org.
   Ficar de olho nos patches de migração para arch-optimized code.

✅ PLANEJAR A MIGRAÇÃO (para desenvolvedores de kernel).
    Substituir crypto_skcipher pelas novas APIs de biblioteca.
   Substituir crypto_aead pelas novas APIs (GCM, CCM).
  □ Aproveitar as otimizações por arquitetura quando disponíveis.



Conclusão


O Linux 7.3 dá um passo fundamental na evolução do subsistema de criptografia do kernel. 

As novas APIs de biblioteca para modos AES representam não apenas uma limpeza de código e redução de duplicação, mas principalmente a base para otimizações significativas de performance nos ciclos futuros.

Para desenvolvedores de kernel, é hora de começar a se familiarizar com as novas APIs e planejar a migração. 

Para usuários finais, a mensagem é clara: o Linux está ficando mais rápido e mais seguro, e você nem precisa fazer nada — apenas manter seu sistema atualizado.


Nenhum comentário:

Postar um comentário