mc2  by mc2-project

Platform for secure analytics and machine learning on encrypted data

created 5 years ago
305 stars

Top 88.8% on sourcepulse

GitHubView on GitHub
Project Summary

MC2 is a platform for secure analytics and machine learning on encrypted data, enabling users to perform computations in the cloud without exposing sensitive information. It targets researchers and organizations needing to analyze confidential data or collaborate on datasets securely, offering services like Opaque SQL for encrypted data analytics and Secure XGBoost for collaborative model training.

How It Works

MC2 leverages hardware enclaves (like Intel SGX) to perform computations on data that remains encrypted throughout the process. This approach ensures data confidentiality even from the cloud provider. For collaborative analysis, it enables multiple parties to contribute data and run joint computations without revealing their individual datasets to each other.

Quick Start & Requirements

  • Installation: Via Docker (build image: ~7 min, or pull pre-built image) or from source.
  • Prerequisites: Docker installed. For cloud deployments, Azure account and SGX-enabled VMs are required.
  • Quickstart: Detailed local (Docker) and cloud (Azure) quickstarts are available, demonstrating data encryption, remote computation execution, and result decryption.
  • Documentation: MC2 Client and Opaque SQL documentation links are provided.

Highlighted Details

  • Supports Opaque SQL for encrypted analytics on Spark SQL.
  • Enables collaborative XGBoost training and inference on encrypted data.
  • Includes research prototypes for secure multi-party computation (Cerebro) and deep neural network inference (Delphi, Muse).
  • MC2 client supports remote interaction with deployed MC2 services.

Maintenance & Community

  • Project originated from UC Berkeley RISE Lab.
  • Community engagement via Slack and GitHub issues.
  • Contact email: mc2-dev@googlegroups.com.

Licensing & Compatibility

  • License details are not explicitly stated in the README. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

  • The MC2 client currently only supports remote deployments of Opaque SQL; Secure XGBoost support is pending.
  • The project includes exploratory research prototypes, which may indicate a less stable or production-ready status for those components.
Health Check
Last commit

2 years ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
0
Star History
4 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.