The Microsoft Simple Encrypted Arithmetic Library goes open source
Today we are extremely excited to announce that our Microsoft Simple Encrypted Arithmetic Library (Microsoft SEAL), an easy-to-use homomorphic encryption library developed by researchers in the Cryptography Research group at Microsoft, is open source on GitHub under an MIT License for free use. The library has already been adopted by Intel to implement the underlying cryptography functions in HE-Transformer, the homomorphic encryption back end to its neural network compiler nGraph.
As we increasingly move our data to the cloud, there is a clear concern that arises: How can we balance convenience and privacy? We all love to get practical guidance on how to, for example, maximize our investments, improve our workouts, or reach our destinations as efficiently as possible. In exchange, we share personal information with service providers because we have few other options. With traditional encryption schemes, it is impossible to run any computation on encrypted data. So either we store our data encrypted in the cloud and download it to perform any useful operations, which can be logistically inconvenient, or we provide the decryption key to service providers, risking our privacy. Until now. Homomorphic encryption, which allows processing of encrypted data, gives us the ability to use these services without exposing our private information.
In 2015, Microsoft Research released the first version of Microsoft SEAL with the speciﬁc goal of providing a well-engineered and documented homomorphic encryption library, free of external dependencies, that would be easy for both cryptography experts and novice practitioners to use. In 2016, we demonstrated CryptoNets, showing that deep learning on homomorphically encrypted data is indeed feasible, revolutionizing our approach to responsible AI.
Now, homomorphic encryption is ready to be standardized, and Microsoft, other industry leaders, academic institutions, and government agencies are actively working toward this goal. This is the right moment to put our library in the hands of every developer, so we can work together for more secure, private, and trustworthy computing.
In addition to having no external dependencies, Microsoft SEAL is written in standard C++, making it easy to compile in many different environments. We are looking forward to engaging with the open-source community in continuing to develop our library. If you are interested, we warmly invite you to join us on GitHub or to participate in discussions on StackOverflow tag-SEAL.