0Pricing
Cryptology Academy · Aula

CKKS para aritmética aproximada e aprendizado de máquina

Aplique CKKS à inferência de aprendizado de máquina com preservação de privacidade.

CKKS para aritmética aproximada e aprendizado de máquina é uma aula grátis de Cryptology Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cryptology Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cryptology Academy inclui 4 aulas no total.

Por que CKKS?

BGV/BFV operam sobre inteiros (aritmética exata). O aprendizado de máquina usa números de ponto flutuante (aritmética aproximada). CKKS (Cheon-Kim-Kim-Song, 2017) codifica números reais e complexos e permite perda de precisão controlada — ideal para inferência de aprendizado de máquina e análise de dados.

Aritmética aproximada

O CKKS trata o ruído como parte da precisão da codificação. Em vez de eliminar o ruído (corrigindo erros), o CKKS considera o resultado uma aproximação com limites de precisão garantidos. Esse compromisso permite um HE muito mais eficiente para computações com valores contínuos.

Codificação de números reais

O CKKS codifica um vetor de números complexos como um polinômio: um vetor (z_0, ..., z_{n/2-1}) é mapeado, por meio da FFT inversa, para um polinômio em R. O fator de escala Δ (por exemplo, 2^40) mapeia números de ponto flutuante para inteiros. São n/2 posições reais por texto cifrado.

Reescala

Após a multiplicação, o fator de escala dobra: Δ^2. O CKKS introduz uma operação de reescala: divide por Δ para restaurar uma única escala. Isso também reduz o nível do módulo do texto cifrado (como a troca de módulo do BGV), mantendo o texto cifrado gerenciável.

Análise de precisão

Cada multiplicação consome um nível de módulo e reduz a precisão em aproximadamente log2(Δ) bits. Para um circuito de profundidade L com fator de escala Δ = 2^40, a perda total de precisão é de aproximadamente L*40 bits. Escolha um módulo inicial Q grande o suficiente para acomodar esse orçamento de precisão.

Inferência de aprendizado de máquina com CKKS

Camadas lineares (multiplicação matriz-vetor): eficientes — rotação e acumulação. Funções de ativação (ReLU, sigmoide): é necessária uma aproximação polinomial. ReLU: aproxime com um polinômio de Chebyshev de grau 7. Perda de precisão: aproximadamente 0,1-1% em comparação com a inferência em texto claro.

Exemplo de inferência privada

O hospital criptografa os dados do paciente com sua chave pública CKKS. A nuvem executa uma rede neural de diagnóstico sobre os dados criptografados usando operações CKKS. Ela retorna uma previsão criptografada. O hospital a descriptografa com a chave privada. A nuvem nunca vê os dados do paciente nem o diagnóstico em texto claro.

Parâmetros do CKKS

Recomendação do HEAAN/OpenFHE: n=2^15 (32768) para circuitos profundos de aprendizado de máquina. Cadeia de módulos: Q inicial ≈ 2^1500 para 30 níveis de multiplicação com Δ=2^50. Segurança: 128 bits, supondo que o CKKS com esses parâmetros seja tão difícil quanto o RLWE. Memória: texto cifrado de aproximadamente 1 MB.

Reinicialização no CKKS

A reinicialização do CKKS (Cheon et al., 2018) avalia homomorficamente a redução modular para atualizar o texto cifrado. Complexidade: avaliar a função seno (por meio de uma aproximação polinomial) sobre números complexos. Permite profundidade ilimitada do circuito, a aproximadamente 30 segundos por reinicialização.

Comparação: CKKS versus BFV

BFV: inteiros exatos, textos claros inteiros e nenhuma perda de precisão. CKKS: números reais/complexos aproximados, textos claros de ponto flutuante e precisão que diminui com a profundidade. Use BFV para: bancos de dados, consultas e computação exata. Use CKKS para: aprendizado de máquina, estatísticas e computação científica.

Bibliotecas

HEAAN (CKKS original, Universidade Nacional de Seul). Microsoft SEAL (CKKS + BFV). OpenFHE (CKKS + BGV + BFV). Concrete-ML (Zama.ai, encapsula o OpenFHE para modelos do scikit-learn e PyTorch). TF-HE (experimentos de integração entre TensorFlow e HE).

Verificação rápida

Por que o CKKS é preferido ao BFV para a inferência de aprendizado de máquina?

Recapitulação

O CKKS é compatível com aritmética aproximada de números reais, ideal para inferência de aprendizado de máquina e estatísticas sobre dados criptografados. A reescala gerencia o fator de escala; aproximações polinomiais substituem as funções de ativação. Próximo: criptografia pós-quântica — os algoritmos de Shor e Grover.

Perguntas Frequentes

A aula “CKKS para aritmética aproximada e aprendizado de máquina” é grátis?

Sim — o texto completo de “CKKS para aritmética aproximada e aprendizado de máquina” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cryptology Academy, atualize para CoddyKit PRO. O curso de Cryptology Academy inclui 4 aulas no total.

O que vou aprender em “CKKS para aritmética aproximada e aprendizado de máquina”?

Aplique CKKS à inferência de aprendizado de máquina com preservação de privacidade. Você pratica Cryptology Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cryptology Academy?

Nenhuma experiência prévia é necessária. Cryptology Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “CKKS para aritmética aproximada e aprendizado de máquina”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cryptology Academy?

Sim. Cada aula de Cryptology Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. O que é encriptação homomórfica?
  2. Fundamentos de Learning With Errors (LWE)
  3. Esquemas BGV e BFV para operações com inteiros
  4. CKKS para aritmética aproximada e aprendizado de máquina
← Voltar para Cryptology Academy