SecretFlow is a unified framework for privacy-preserving data intelligence and machine learning. To achieve this goal, it provides:
- An abstract device layer consists of plain devices and secret devices which encapsulate various cryptographic protocols.
- A device flow layer modeling higher algorithms as device object flow and DAG.
- An algorithm layer to do data analysis and machine learning with horizontal or vertical partitioned data.
- A workflow layer that seamlessly integrates data processing, model training, and hyperparameter tuning.
- SCQL: A system that allows multiple distrusting parties to run joint analysis without revealing their private data.
- SPU: A provable, measurable secure computation device, which provides computation ability while keeping your private data protected.
- HEU: A high-performance homomorphic encryption algorithm library.
- YACL: A C++ library that contains cryptgraphy, network and io modules which other SecretFlow code depends on.
Please check INSTALLATION.md
Please check DEPLOYMENT.md
We also provide a curated list of papers and SecretFlow's tutorials on Privacy-Enhancing Technologies (PETs).
Please check AWESOME-PETS.md
Please check CONTRIBUTING.md
Non-release versions of SecretFlow are prohibited to use in any production environment due to possible bugs, glitches, lack of functionality, security issues or other problems.