Repolode
data61

data61/MP-SPDZ

Framework em C++ para executar e comparar o desempenho de diversos protocolos de computação multipartidária segura sob diferentes modelos de segurança.

Estrelas
1,195
Forks
371
Issues abertas
9
Último commit
há 9 dias

O que é?

MP-SPDZ é um framework de computação multipartidária segura (MPC), em que várias partes calculam conjuntamente uma função sobre suas entradas privadas sem revelar essas entradas umas às outras. Seu principal objetivo é executar o mesmo cálculo com diversos protocolos para comparar o desempenho deles. Os protocolos abrangem cenários com maioria desonesta e maioria honesta, além de modelos de segurança que vão de corrupção semi-honesta (passiva) a maliciosa (ativa).

Os programas são escritos em uma linguagem de alto nível semelhante a Python e compilados para bytecode, que uma máquina virtual executa pela rede. A implementação abrange circuitos aritméticos módulo um primo ou uma potência de dois, circuitos binários e circuitos garbled de Yao. O compilador se concentra em minimizar as rodadas de comunicação dos protocolos de compartilhamento de segredos. É possível executar cálculos localmente, em várias máquinas por SSH ou no Docker.

O projeto inclui programas de exemplo, entre eles um tutorial, e documentação no Read the Docs. O README informa que o projeto não passou por uma auditoria de segurança; portanto, seu uso é voltado a pesquisa e benchmarking, não à produção.

Recursos principais

  • 01Oferece suporte a diversos protocolos MPC em modelos de segurança maliciosos, semi-honestos, com maioria honesta e com maioria desonesta.
  • 02Compila programas de alto nível semelhantes a Python para bytecode executado por uma máquina virtual.
  • 03Abrange circuitos aritméticos módulo um primo ou 2^k, circuitos binários e circuitos garbled de Yao.
  • 04Executa cálculos localmente, em hosts remotos por SSH ou no Docker.
  • 05Inclui um tutorial e programas de exemplo de MPC.

Casos de uso

  • Comparar o desempenho de diferentes protocolos MPC no mesmo cálculo.
  • Realizar pesquisa acadêmica sobre protocolos de computação segura e suas vantagens e desvantagens.
  • Prototipar cálculos que preservam a privacidade entre várias partes que não colaboram entre si.

Início rápido

  1. 1

    Criar a imagem Docker para o binário mascot-party.x

    docker build --tag mpspdz:mascot-party --build-arg machine=mascot-party.x .
  2. 2

    Executar o programa do tutorial com duas partes e segurança maliciosa

    docker run --rm -it mpspdz:mascot-party ./Scripts/compile-run.py mascot tutorial

Antes de usar

  • O README informa que o software não passou por uma revisão de segurança, portanto ele não deve ser usado sem alterações com segredos de produção.
  • Os metadados não identificam claramente a licença do projeto; por isso, confira a licença do repositório antes de reutilizá-lo.
  • A compilação a partir do código-fonte exige uma toolchain C++ funcional e várias bibliotecas; usuários do Windows recebem a indicação de uma alternativa com VirtualBox.

Tópicos

Perguntas frequentes

O que é MP-SPDZ?
Framework em C++ para executar e comparar o desempenho de diversos protocolos de computação multipartidária segura sob diferentes modelos de segurança. MP-SPDZ é um framework de computação multipartidária segura (MPC), em que várias partes calculam conjuntamente uma função sobre suas entradas privadas sem revelar essas entradas umas às outras. Seu principal objetivo é executar o mesmo cálculo com diversos protocolos para comparar o desempenho deles. Os protocolos abrangem cenários com maioria desonesta e maioria honesta, além de modelos de segurança que vão de corrupção semi-honesta (passiva) a maliciosa (ativa).
MP-SPDZ é gratuito? Qual é a licença?
MP-SPDZ é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
MP-SPDZ ainda é mantido?
Manutenção ativa. O último commit de MP-SPDZ foi em 16 de out. de 2026.
Para que posso usar MP-SPDZ?
Comparar o desempenho de diferentes protocolos MPC no mesmo cálculo. Realizar pesquisa acadêmica sobre protocolos de computação segura e suas vantagens e desvantagens. Prototipar cálculos que preservam a privacidade entre várias partes que não colaboram entre si.
Como instalar MP-SPDZ?
Criar a imagem Docker para o binário mascot-party.x: docker build --tag mpspdz:mascot-party --build-arg machine=mascot-party.x . Executar o programa do tutorial com duas partes e segurança maliciosa: docker run --rm -it mpspdz:mascot-party ./Scripts/compile-run.py mascot tutorial
Onde consigo MP-SPDZ?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/data61/MP-SPDZ

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

Projetos relacionados