Introdução

Material introdutório adicional sobre criptografia homomórfica pode ser encontrado na página da Wikipédia sobre Criptografia Homomórfica.

Criptografia homomórfica básica

Criptografia totalmente homomórfica, ou simplesmente criptografia homomórfica, refere-se a uma classe de métodos de criptografia idealizada por Rivest, Adleman, e Dertouzos já em 1978, e construída pela primeira vez por Craig Gentry em 2009. A criptografia homomórfica difere dos métodos típicos de criptografia por permitir que o cálculo seja feito diretamente sobre os dados criptografados sem a necessidade de acesso a uma chave secreta. O resultado de tal computação permanece na forma criptografada, e pode ser revelado posteriormente pelo proprietário da chave secreta.

aplicações

Cheap cloud computing e cloud storage mudaram fundamentalmente a forma como empresas e indivíduos usam e gerenciam seus dados. Os métodos tradicionais de criptografia, como AES, são extremamente rápidos e permitem que os dados sejam armazenados de forma conveniente e criptografada. Entretanto, para realizar até mesmo uma análise simples dos dados criptografados, o servidor da nuvem precisa ter acesso à chave secreta, o que leva a preocupações de segurança, ou o proprietário dos dados precisa baixar, decodificar e operar nos dados localmente, o que pode ser caro e criar um desafio logístico. A criptografia homomórfica pode ser usada para simplificar consideravelmente esse cenário, pois a nuvem pode operar diretamente nos dados criptografados e retornar apenas o resultado criptografado para o proprietário dos dados. Cenários de aplicação mais complexos podem envolver várias partes com dados privados que um terceiro pode operar, e retornar o resultado a um ou mais dos participantes a serem descriptografados.

O concurso anual iDASH desafia a comunidade de pesquisa a pressionar os limites e estender a criptografia homomórfica a novos casos de uso no campo da privacidade do genoma.

Segurança

A segurança dos esquemas mais práticos de criptografia homomórfica é baseada no problema de Ring-Learning With Errors (RLWE), que é um problema matemático difícil relacionado a lattices de alta dimensão. Nomeadamente, a suposição de segurança destes esquemas de criptografia afirma que se o esquema pode ser quebrado eficientemente, então o problema RLWE pode ser resolvido eficientemente. Uma longa linha de pesquisa revisada por pares confirmando a dureza do problema RLWE nos dá confiança de que esses esquemas são de fato tão seguros quanto qualquer esquema de criptografia padronizado.

Como foi mencionado acima, o problema RLWE está intimamente relacionado a famosos problemas de estruturas duras que são atualmente considerados seguros contra computadores quânticos. Da mesma forma, RLWE e posteriormente a maioria dos esquemas de criptografia homomórfica são considerados seguros contra computadores quânticos, tornando-os de fato mais seguros do que a factorização e sistemas baseados em logaritmos discretos como RSA e muitas formas de criptografia de curvas elípticas. Na verdade, o projeto de padronização de criptografia pós-quântica organizado pelo NIST teve várias submissões baseadas em problemas de malha dura semelhantes ao que a criptografia homomórfica moderna utiliza.

standardization

Existem várias razões pelas quais achamos que este é o momento certo para padronizar a criptografia homomórfica.

  • Já existe uma necessidade extrema de tecnologia de computação segura facilmente disponível, e esta necessidade será cada vez mais forte à medida que mais empresas e indivíduos mudarem para o armazenamento em nuvem e computação. A criptografia homomórfica já está amadurecida para o uso mainstream, mas a atual falta de padronização está dificultando o início do uso.
  • Especificamente, as implementações atuais não são suficientemente fáceis de usar por não-especialistas. O padrão irá pressionar para uniformizar e simplificar sua API, e educar os desenvolvedores de aplicações para usá-las.
  • As propriedades de segurança dos esquemas de criptografia homomórfica baseados em RLWE podem ser difíceis de entender. O padrão apresentará as propriedades de segurança do(s) esquema(s) padronizado(s) de uma forma clara e compreensível.

disponibilidade

Existem hoje em dia implementações de código aberto de esquemas de criptografia homomórfica. Abaixo está uma lista incompleta. Se você gostaria de ver sua implementação sendo adicionada, entre em contato conosco em [email protected].

  • Microsoft SEAL: Uma biblioteca de código aberto amplamente utilizada pela Microsoft que suporta os esquemas BFV e CKKS.
  • PALISADE: Uma biblioteca de código aberto amplamente utilizada por um consórcio de empreiteiros de defesa financiados pela DARPA que suporta múltiplos esquemas de criptografia homomórfica, como BGV, BFV, CKKS, TFHE e FHEW, entre outros, com suporte multipartidário.
  • HELib: Uma biblioteca antiga e amplamente utilizada da IBM que suporta o esquema CKKS e BGV e bootstrapping.
  • FHEW / TFHE: Suporta o esquema TFHE. TFHE é projetado a partir de FHEW, que não está mais sendo desenvolvido ativamente.
  • HeaAn: Esta biblioteca implementa o esquema CKKS com suporte nativo para aritmética de ponto fixo aproximado.
  • Λ ○ λ (pronuncia-se “L O L”): Esta é uma biblioteca Haskell para criptografia de malha baseada em anel que suporta FHE.
  • NFLlib: Esta biblioteca é um resultado do projeto europeu HEAT para explorar criptografia homomórfica de alto desempenho usando primitivas de baixo nível de processador.
    • HEAT: Esta biblioteca foca em uma API que faz a ponte entre FV-NFLib e HeLIB.
    • HEAT: Uma implementação de acelerador HW para FV-NFLlib.
  • cuHE: Esta biblioteca explora o uso de GPGPUs para acelerar a encriptação homomórfica.
  • Lattigo: Esta é uma biblioteca criptográfica baseada em lattícia escrita em Go.
  • Concrete: Esta biblioteca suporta uma variante personalizada do esquema TFHE.

Deixe uma resposta

O seu endereço de email não será publicado.