|Microsoft SEAL Cryptography .NET Wrapper Released|
|Written by Kay Ewbank|
|Monday, 25 February 2019|
Microsoft has released a .NET wrapper for SEAL, its homomorphic encryption library. The Microsoft Simple Encrypted Arithmetic Library was made open source in December, and according to Microsoft has already become one of the world’s most popular homomorphic encryption libraries.
The library was developed by researchers in the Cryptography Research group at Microsoft. It is written in standard C++ with no external dependencies, making it easy to compile in many different environments.
Homomorphic Encryption (HE) is a technique for encryption that means data can be left encrypted but still used for computations. The computations can take place without the process doing the computation needing access to a decryption key. The results of the computations are encrypted, and only the owner of the decryption key can see the results. This offers a particular advantage where data is stored in cloud environments, and the cloud operators never have unencrypted access to the data they are storing and computing on.
The release of the Microsoft SEAL for .NET provides a wrapper library for SEAL to make it easier for .NET applications to interact with SEAL. Microsoft also released an 'in-depth scenario example' showing the wrapper and library combination in use, and performing different operations, such as matrix multiplications, additions, and subtractions using Azure Functions without compromising data privacy.
Azure Functions provides a way to run small pieces of code, or "functions", in the cloud. You write just the code you need for the problem at hand, without needing to create an entire application or the infrastructure to run it. Functions can be written in a variety of programming languages such as C#, F#, Node.js, Java, or PHP.
One of the projects in the SEAL .NET demo shows implementing matrix addition, subtraction, and multiplication in Azure Functions, receiving as input a pair of ciphertexts. Another project provides a user interface that allows entering matrices, encrypting them, sending them to the cloud functions, receiving the result, decrypting the result, and showing the result to the user. The user interface has an option to show the actual data that is being sent and received from the cloud functions.
Microsoft SEAL for .NET is a part of Microsoft SEAL version 3.2.0, which is being released on GitHub. In addition to the .NET wrapper library, version 3.2.0 introduces bug fixes and minor performance improvements.
or email your comment to: firstname.lastname@example.org