Lição 2

Esquemas Criptográficos e Fundamentos Técnicos

Apresenta os principais esquemas de FHE — BFV, BGV, CKKS e TFHE — e examina seus casos de uso para inteiros, aritmética aproximada e operações em nível de bit. Explica técnicas como bootstrapping, gerenciamento de ruído e aceleração por hardware que viabilizam o uso prático do FHE. Analisa também as principais bibliotecas (Microsoft SEAL, OpenFHE, TFHE‑rs) e como elas permitem que desenvolvedores implementem FHE em sistemas reais.

Introdução aos Esquemas FHE

A criptografia totalmente homomórfica não é composta por um único algoritmo, mas sim por uma família de construções criptográficas que possibilitam a computação sobre dados criptografados. Cada esquema parte de problemas matemáticos complexos, principalmente suposições baseadas em reticulados, como Learning With Errors (LWE) e Ring-LWE, consideradas resistentes até mesmo a ataques de computadores quânticos. Esses esquemas diferem em eficiência, nos tipos de operações que melhor suportam e na forma como lidam com o ruído acumulado ao longo das operações. Entender os principais esquemas é essencial para compreender como o FHE se integra a ambientes de contratos inteligentes e o motivo da escolha de certos modelos para usos específicos.

Os quatro esquemas mais discutidos são BFV, BGV, CKKS e TFHE/FHEW. Cada um atende a demandas computacionais distintas e se fundamenta em abordagens matemáticas próprias. A escolha para aplicações em blockchain costuma depender se o foco é em cálculos exatos com inteiros, aritmética aproximada adequada ao aprendizado de máquina ou operações bit a bit rápidas — essenciais para lógica de contratos inteligentes.

BFV e BGV: Foco em Operações Inteiras

Os esquemas BFV (Brakerski–Fan–Vercauteren) e BGV (Brakerski–Gentry–Vaikuntanathan) estão entre as primeiras implementações práticas de FHE a ganhar adoção. Ambos utilizam criptografia baseada em reticulados e foram desenvolvidos para operações com inteiros ou aritmética modular. Eles suportam adição e multiplicação exatas, tornando-se adequados para cálculos financeiros, sistemas de votação e aplicações que exigem máxima precisão.

O BFV é especialmente eficiente no processamento de cálculos inteiros modulares, ideal para aplicações que requerem resultados determinísticos e sem erros de arredondamento. O BGV, embora parecido nos fundamentos, introduz otimizações para textos cifrados compactados, viabilizando o processamento paralelo de múltiplos valores (técnica chamada de batching). Essa capacidade é estratégica em blockchains, onde throughput e custos de transação estão diretamente relacionados à eficiência computacional.

BFV e BGV utilizam criptografia homomórfica nivelada, ou seja, suportam apenas um número limitado de operações antes que o ruído do texto cifrado se torne excessivo. Bootstrapping — o processo de renovar o texto cifrado por meio de recriptografia homomórfica — transforma esses esquemas em verdadeiramente homomórficos. Ainda que o bootstrapping tenha sido, inicialmente, extremamente lento, implementações recentes reduziram drasticamente seu custo, tornando viável a computação criptografada contínua em ambientes práticos.

CKKS: Aritmética Aproximada para IA e Machine Learning

O esquema CKKS (Cheon–Kim–Kim–Song) adotou uma abordagem inovadora ao permitir operações aritméticas aproximadas em vez de cálculos inteiros exatos. Essa proposta é especialmente relevante para cargas de trabalho de inteligência artificial e aprendizado de máquina, nos quais a precisão absoluta raramente é necessária e aproximações em ponto flutuante são aceitáveis. O CKKS codifica números reais ou complexos em textos cifrados, dando suporte à computação vetorizada para acelerar inferências de modelos criptografados e análises de dados privadas.

O trade-off do CKKS está no fato de seus resultados serem aproximados: pequenas imprecisões podem ocorrer devido ao escalonamento e arredondamento durante o processamento criptografado. Para muitos casos de uso em IA e ciência de dados, esse comprometimento é plenamente aceitável, já que os modelos toleram variações numéricas marginais. Em blockchains, o CKKS pode sustentar agentes inteligentes confidenciais on-chain, possibilitando previsões ou avaliações de risco sem revelar o modelo nem os dados do usuário.

Apesar das vantagens para diversos workloads, o CKKS não é recomendado para smart contracts financeiros ou sistemas de votação que exigem precisão absoluta. Nesses casos, são preferidos esquemas baseados em inteiros como o BFV ou TFHE. Entretanto, a capacidade do CKKS de lidar com operações vetoriais de alta dimensão o torna uma aposta para futuros mercados descentralizados de IA e soluções de aprendizado federado orientadas à privacidade em blockchains.

TFHE e FHEW: Esquemas para Operações Bit a Bit

TFHE (Fast Fully Homomorphic Encryption over the Torus) e seu precursor FHEW são otimizados para cálculos no nível de bits. Diferentemente de BFV, BGV ou CKKS — que operam sobre vetores ou polinômios — o TFHE criptografa bits individuais e executa operações booleanas extremamente rápidas. Essa estratégia é especialmente eficaz para aplicações que dependem de portas lógicas, como comparações, ramificações condicionais ou mudanças de estado criptografado em contratos inteligentes.

O TFHE se destaca por sua notável velocidade no bootstrapping. Nos primeiros esquemas de FHE, este processo era o principal gargalo, levando segundos para cada operação. O TFHE revolucionou ao reduzir esse tempo para milissegundos, por meio de uma nova abordagem para atualizar textos cifrados, tornando prática a computação criptografada contínua em aplicações interativas. Assim, tornou-se referência para blockchains como o fhEVM da Zama, onde contratos inteligentes lidam com lógica criptografada de forma eficiente.

A principal limitação do TFHE reside no foco em operações booleanas, o que pode comprometer a eficiência em workloads aritméticos intensivos se comparado a CKKS ou BFV. Porém, surgiram abordagens híbridas: TFHE para lógica de controle e CKKS para aritmética aproximada, unindo pontos fortes de ambos em aplicações descentralizadas orientadas à privacidade.

Bootstrapping e Gerenciamento de Ruído

O ruído é inerente aos esquemas de criptografia homomórfica baseados em reticulados. A cada operação feita sobre dados criptografados, esse ruído aumenta; ao exceder certo limite, impede a decriptação correta do texto cifrado. Bootstrapping é o processo de descriptografar e recriptografar homomorficamente, zerando o ruído e permitindo cálculos ilimitados.

Algoritmos iniciais de bootstrapping eram lentos e exigiam muitos recursos, tornando a FHE impraticável fora do ambiente acadêmico. Porém, nos últimos anos, avanços reduziram o tempo de bootstrapping de minutos para milissegundos. TFHE e FHEW foram pioneiros em baixa latência para aplicações em tempo real, enquanto CKKS e BFV também evoluíram com melhorias algorítmicas e suporte a aceleração por hardware.

O gerenciamento do ruído vai além do bootstrapping. Técnicas como troca de módulo (modulus switching), key switching (troca de chaves) e ciphertext packing (compactação de textos cifrados) ajudam a controlar o crescimento do ruído e a elevar a eficiência. Troca de módulo reduz o tamanho dos textos cifrados no decorrer dos cálculos, key switching permite a migração de dados entre diferentes chaves sem decriptação e packing viabiliza processamento paralelo de múltiplos valores. Em conjunto, tais técnicas compõem a base de implementações FHE realmente aplicáveis.

Aceleração por Hardware e Tendências de Desempenho

A despeito das otimizações algorítmicas, o FHE continua computacionalmente exigente frente à criptografia tradicional. Por isso, a aceleração via hardware é campo central de pesquisa e inovação. GPUs foram o primeiro alvo, graças à capacidade de processamento paralelo — acelerando operações polinomiais e tarefas vetorizadas essenciais para FHE. Mais recentemente, FPGAs e ASICs também têm sido utilizados para obter ganhos de eficiência ainda maiores.

A Zama apresentou um protótipo de Homomorphic Processing Unit (HPU), ilustrando o movimento da indústria em prol de hardware dedicado à computação criptografada. Esses dispositivos são desenvolvidos especificamente para cargas de trabalho FHE, reduzindo latência e consumo energético. Com blockchains exigindo custos mínimos e alta vazão, a aceleração por hardware será fundamental para tornar contratos inteligentes com FHE viáveis comercialmente.

Bibliotecas e Frameworks de Desenvolvimento

Surgiram diversas bibliotecas open source como ferramentas fundamentais para programadores que atuam com FHE. O Microsoft SEAL, amplamente usado, suporta esquemas BFV e CKKS, com foco em facilidade de uso e compatibilidade entre plataformas. O OpenFHE (ex-PALISADE) disponibiliza recursos mais avançados, com suporte para vários esquemas e otimizações sofisticadas. O HElib, criado pela IBM, foca em BGV e permanece referência em ambientes acadêmicos.

Para aplicações em TFHE, a biblioteca TFHE-rs, da Zama, tornou-se padrão, provendo bootstrapping eficiente e integração com o framework fhEVM. A Concrete, também da Zama, entrega ferramentas em Rust que conciliam usabilidade e desempenho para desenvolver aplicações FHE. O Fhenix, orientado a contratos inteligentes confidenciais no Ethereum, oferece um SDK em Solidity que abstrai a complexidade criptográfica, facilitando a criação de contratos criptografados com as ferramentas tradicionais do desenvolvedor blockchain.

O amadurecimento dessas bibliotecas diminuiu drasticamente a barreira de entrada para novos desenvolvedores. O que antes era domínio exclusivo de especialistas em criptografia, agora está ao alcance de programadores de smart contracts habituados a linguagens como Solidity e Rust. Essa democratização do desenvolvimento em FHE acelera a adoção e experimentação em finanças descentralizadas, saúde e aplicações de IA on-chain.

Isenção de responsabilidade
* O investimento em criptomoedas envolve grandes riscos. Prossiga com cautela. O curso não se destina a servir de orientação para investimentos.
* O curso foi criado pelo autor que entrou para o Gate Learn. As opiniões compartilhadas pelo autor não representam o Gate Learn.