Repolode
zama-ai

zama-ai/tfhe-rs

Implementação pura em Rust do esquema TFHE para fazer operações booleanas e aritméticas com inteiros diretamente sobre dados criptografados.

Estrelas
1,675
Forks
338
Issues abertas
54
Último commit
ontem

O que é?

TFHE-rs é uma biblioteca pura em Rust que implementa o TFHE, um esquema de criptografia totalmente homomórfica. Ela permite que um programa opere sobre textos cifrados, de modo que os resultados, depois de descriptografados pelo proprietário dos dados, correspondam aos obtidos com as mesmas operações sobre texto simples. Desenvolvedores podem usá-la em circuitos booleanos e em operações aritméticas com inteiros criptografados de larguras comuns, como FheUint8 e FheUint32.

A biblioteca oferece uma API de alto nível em Rust, uma API em C e uma API JavaScript para o cliente, compilada para WASM. Também inclui uma camada criptográfica de baixo nível com bootstrapping programável, uma API booleana compatível com a biblioteca TFHE original e uma API para inteiros curtos, com aritmética exata sem limite até 8 bits de espaço para mensagens. Há suporte à compressão de textos cifrados e de chaves do servidor para reduzir o volume de dados transferidos.

O projeto é voltado a desenvolvedores e pesquisadores que precisam fazer computação com preservação de privacidade sem lidar com detalhes criptográficos de baixo nível. A documentação, o handbook e os tutoriais abordam os algoritmos subjacentes, a escolha de parâmetros e aplicações de exemplo.

Recursos principais

  • 01Operações booleanas e aritméticas com inteiros sobre dados criptografados usando TFHE.
  • 02API de alto nível em Rust, com tipos de inteiros criptografados como FheUint32.
  • 03Bindings para C e API JavaScript para o cliente, compilada para WASM.
  • 04Bootstrapping programável na camada criptográfica de baixo nível.
  • 05Compressão de textos cifrados e de chaves do servidor para reduzir o volume de dados transferidos.

Casos de uso

  • Criar serviços com preservação de privacidade que processam dados que o servidor não consegue ler.
  • Prototipar circuitos booleanos ou de inteiros criptografados em pesquisas.
  • Executar criptografia no lado do cliente em navegadores por meio da API WASM.

Início rápido

  1. 1

    Verifique se sua versão do Rust é 1.91.1 ou superior

    rustc --version
  2. 2

    Adicione TFHE-rs como dependência em Cargo.toml

    tfhe = { version = "*", features = ["boolean", "shortint", "integer"] }
  3. 3

    Execute o exemplo no modo release

    cargo run --release

Antes de usar

  • Licenciado sob BSD-3-Clause-Clear, que limita o uso a desenvolvimento, pesquisa, prototipagem e experimentação. O uso comercial requer uma licença de patente separada da Zama.
  • As medidas de mitigação contra ataques de canal lateral ainda não foram implementadas.
  • Requer Rust 1.91.1 ou superior.
  • Máquinas AArch64 não são compatíveis com Windows.

Em coleções

Tópicos

Perguntas frequentes

O que é tfhe-rs?
Implementação pura em Rust do esquema TFHE para fazer operações booleanas e aritméticas com inteiros diretamente sobre dados criptografados. TFHE-rs é uma biblioteca pura em Rust que implementa o TFHE, um esquema de criptografia totalmente homomórfica. Ela permite que um programa opere sobre textos cifrados, de modo que os resultados, depois de descriptografados pelo proprietário dos dados, correspondam aos obtidos com as mesmas operações sobre texto simples. Desenvolvedores podem usá-la em circuitos booleanos e em operações aritméticas com inteiros criptografados de larguras comuns, como FheUint8 e FheUint32.
tfhe-rs é gratuito? Qual é a licença?
tfhe-rs é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
tfhe-rs ainda é mantido?
Manutenção ativa. O último commit de tfhe-rs foi em 23 de out. de 2026.
Para que posso usar tfhe-rs?
Criar serviços com preservação de privacidade que processam dados que o servidor não consegue ler. Prototipar circuitos booleanos ou de inteiros criptografados em pesquisas. Executar criptografia no lado do cliente em navegadores por meio da API WASM.
Como instalar tfhe-rs?
Verifique se sua versão do Rust é 1.91.1 ou superior: rustc --version Adicione TFHE-rs como dependência em Cargo.toml: tfhe = { version = "*", features = ["boolean", "shortint", "integer"] } Execute o exemplo no modo release: cargo run --release
Onde consigo tfhe-rs?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/zama-ai/tfhe-rs

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados