Microsoft SEAL

Last updated
Microsoft SEAL
Developer(s) Microsoft Research
Initial releaseDecember 3, 2018;4 years ago (2018-12-03)
Stable release
4.0.0 / March 17, 2022;19 months ago (2022-03-17)
Repository github.com/Microsoft/SEAL
Written in C++
Operating system Microsoft Windows, macOS, Linux, Android
Platform IA-32, x86-64, ARM64
Type Homomorphic encryption library
License MIT License
Website www.microsoft.com/en-us/research/project/microsoft-seal

Simple Encrypted Arithmetic Library or SEAL is a free and open-source cross platform software library developed by Microsoft Research that implements various forms of homomorphic encryption. [1] [2]

Contents

History

Development originally came out of the Cryptonets paper, [3] demonstrating that artificial intelligence algorithms could be run on homomorphically encrypted data. [4]

It is open-source (under the MIT License) and written in standard C++ without external dependencies and so it can be compiled cross platform. An official .NET wrapper written in C# is available and makes it easier for .NET applications to interact with SEAL.

Features

Algorithms

Microsoft SEAL supports both asymmetric and symmetric (added in version 3.4) encryption algorithms.

Scheme types

Microsoft SEAL comes with two different homomorphic encryption schemes with very different properties:

Compression

Data compression can be achieved by building SEAL with Zlib support. By default, data is compressed using the DEFLATE algorithm which achieves significant memory footprint savings when serializing objects such as encryption parameters, ciphertexts, plaintexts, and all available keys: Public, Secret, Relin (relinearization), and Galois. Compression can always be disabled.

Availability

There are several known ports of SEAL to other languages in active development:

C++

C#/F#

Python

JavaScript

TypeScript

Related Research Articles

<span class="mw-page-title-main">Encryption</span> Process of converting plaintext to ciphertext

In cryptography, encryption is the process of encoding information. This process converts the original representation of the information, known as plaintext, into an alternative form known as ciphertext. Ideally, only authorized parties can decipher a ciphertext back to plaintext and access the original information. Encryption does not itself prevent interference but denies the intelligible content to a would-be interceptor.

Kerberos is a computer-network authentication protocol that works on the basis of tickets to allow nodes communicating over a non-secure network to prove their identity to one another in a secure manner. Its designers aimed it primarily at a client–server model, and it provides mutual authentication—both the user and the server verify each other's identity. Kerberos protocol messages are protected against eavesdropping and replay attacks.

The Paillier cryptosystem, invented by and named after Pascal Paillier in 1999, is a probabilistic asymmetric algorithm for public key cryptography. The problem of computing n-th residue classes is believed to be computationally difficult. The decisional composite residuosity assumption is the intractability hypothesis upon which this cryptosystem is based.

Authenticated Encryption (AE) is an encryption scheme which simultaneously assures the data confidentiality and authenticity. Examples of encryption modes that provide AE are GCM, CCM.

Homomorphic encryption is a form of encryption that allows computations to be performed on encrypted data without first having to decrypt it. The resulting computations are left in an encrypted form which, when decrypted, result in an output that is identical to that produced had the operations been performed on the unencrypted data. Homomorphic encryption can be used for privacy-preserving outsourced storage and computation. This allows data to be encrypted and out-sourced to commercial cloud environments for processing, all while encrypted.

<span class="mw-page-title-main">HTTP compression</span> Capability that can be built into web servers and web clients

HTTP compression is a capability that can be built into web servers and web clients to improve transfer speed and bandwidth utilization.

Private biometrics is a form of encrypted biometrics, also called privacy-preserving biometric authentication methods, in which the biometric payload is a one-way, homomorphically encrypted feature vector that is 0.05% the size of the original biometric template and can be searched with full accuracy, speed and privacy. The feature vector's homomorphic encryption allows search and match to be conducted in polynomial time on an encrypted dataset and the search result is returned as an encrypted match. One or more computing devices may use an encrypted feature vector to verify an individual person or identify an individual in a datastore without storing, sending or receiving plaintext biometric data within or between computing devices or any other entity. The purpose of private biometrics is to allow a person to be identified or authenticated while guaranteeing individual privacy and fundamental human rights by only operating on biometric data in the encrypted space. Some private biometrics including fingerprint authentication methods, face authentication methods, and identity-matching algorithms according to bodily features. Private biometrics are constantly evolving based on the changing nature of privacy needs, identity theft, and biotechnology.

Yuriy Sergeyevich Polyakov is a Russian-American scientist at Duality Technologies. He is best known for his work in cryptography, chemical engineering, and physics.

Lattice-based cryptography is the generic term for constructions of cryptographic primitives that involve lattices, either in the construction itself or in the security proof. Lattice-based constructions are currently important candidates for post-quantum cryptography. Unlike more widely used and known public-key schemes such as the RSA, Diffie-Hellman or elliptic-curve cryptosystems — which could, theoretically, be defeated using Shor's algorithm on a quantum computer — some lattice-based constructions appear to be resistant to attack by both classical and quantum computers. Furthermore, many lattice-based constructions are considered to be secure under the assumption that certain well-studied computational lattice problems cannot be solved efficiently.

<span class="mw-page-title-main">Kristin Lauter</span> American cryptographer

Kristin Estella Lauter is an American mathematician and cryptographer whose research interest is broadly in application of number theory and algebraic geometry in cryptography. She is particularly known for her work in the area of elliptic curve cryptography. She was a researcher at Microsoft Research in Redmond, Washington, from 1999–2021 and the head of the Cryptography Group from 2008–2021; her group developed Microsoft SEAL. In April 2021, Lauter joined Facebook AI Research (FAIR) as the West Coast Head of Research Science. She became the President-Elect of the Association for Women in Mathematics in February 2014 and served as President February 1, 2015 - January 31, 2017.

In cryptography, post-quantum cryptography (PQC) refers to cryptographic algorithms that are thought to be secure against a cryptanalytic attack by a quantum computer. The problem with currently popular algorithms is that their security relies on one of three hard mathematical problems: the integer factorization problem, the discrete logarithm problem or the elliptic-curve discrete logarithm problem. All of these problems could be easily solved on a sufficiently powerful quantum computer running Shor's algorithm or even faster and less demanding alternatives.

Shai Halevi is a computer scientist who works on cryptography research at Amazon Web Services.

In post-quantum cryptography, ring learning with errors (RLWE) is a computational problem which serves as the foundation of new cryptographic algorithms, such as NewHope, designed to protect against cryptanalysis by quantum computers and also to provide the basis for homomorphic encryption. Public-key cryptography relies on construction of mathematical problems that are believed to be hard to solve if no further information is available, but are easy to solve if some information used in the problem construction is known. Some problems of this sort that are currently used in cryptography are at risk of attack if sufficiently large quantum computers can ever be built, so resistant problems are sought. Homomorphic encryption is a form of encryption that allows computation on ciphertext, such as arithmetic on numeric values stored in an encrypted database.

Cheon, Jung Hee is a South Korean cryptographer and mathematician whose research interest includes computational number theory, cryptography, and information security. He is one of the inventors of braid cryptography, one of group-based cryptography, and approximate homomorphic encryption HEAAN. As one of co-inventors of approximate homomorphic encryption HEaaN, he is actively working on homomorphic encryptions and their applications including machine learning, homomorphic control systems, and DNA computation on encrypted data. He is particularly known for his work on an efficient algorithm on strong DH problem. He received the best paper award in Asiacrypt 2008 for improving Pollard rho algorithm, and the best paper award in Eurocrypt 2015 for attacking Multilinear Maps. He was also selected as Scientist of the month by Korean government in 2018 and won the POSCO science prize in 2019.

The Signal Protocol is a non-federated cryptographic protocol that provides end-to-end encryption for voice and instant messaging conversations. The protocol was developed by Open Whisper Systems in 2013 and was first introduced in the open-source TextSecure app, which later became Signal. Several closed-source applications have implemented the protocol, such as WhatsApp, which is said to encrypt the conversations of "more than a billion people worldwide" or Google who provides end-to-end encryption by default to all RCS-based conversations between users of their Messages app for one-to-one conversations. Facebook Messenger also say they offer the protocol for optional Secret Conversations, as does Skype for its Private Conversations.

HEAAN is an open source homomorphic encryption (HE) library which implements an approximate HE scheme proposed by Cheon, Kim, Kim and Song (CKKS). The first version of HEAAN was published on GitHub on 15 May 2016, and later a new version of HEAAN with a bootstrapping algorithm was released. Currently, the latest version is Version 2.1.

Homomorphic Encryption library or HElib is a free and open-source cross platform software developed by IBM that implements various forms of homomorphic encryption.

OpenFHE is an open-source cross platform software library that provides implementations of fully homomorphic encryption schemes. OpenFHE is a successor of PALISADE and incorporates selected design features of HElib, HEAAN, and FHEW libraries.

<span class="mw-page-title-main">Searchable symmetric encryption</span> System allowing searching of encrypted documents

Searchable symmetric encryption (SSE) is a form of encryption that allows one to efficiently search over a collection of encrypted documents or files without the ability to decrypt them. SSE can be used to outsource files to an untrusted cloud storage server without ever revealing the files in the clear but while preserving the server's ability to search over them.

<span class="mw-page-title-main">PALISADE (software)</span>

PALISADE is an open-source cross platform software library that provides implementations of lattice cryptography building blocks and homomorphic encryption schemes.

References

  1. Microsoft SEAL is an easy-to-use and powerful homomorphic encryption library.: microsoft/SEAL, Microsoft, 2019-11-20, archived from the original on 2019-05-31, retrieved 2019-11-20
  2. Coron, Jean-Sébastien; Nielsen, Jesper Buus (2017-04-10). Advances in Cryptology – EUROCRYPT 2017: 36th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Paris, France, April 30 – May 4, 2017, Proceedings. Springer. p. 104. ISBN   9783319566146.
  3. Downlin, Nathan; Gilad-Bachrach, Ran; Laine, Kim; Lauter, Kirstin; Naehrig, Michael; Wernsing, John (2016-05-25). "CryptoNets: Applying Neural Networks to Encrypted Data with High Throughput and Accuracy" (PDF). Proceedings of the 33rd International Conference on Machine Learning. Archived from the original (PDF) on 2018-08-26.
  4. "The Microsoft Simple Encrypted Arithmetic Library goes open source". Microsoft Research. 2018-12-03. Archived from the original on 2019-11-12. Retrieved 2019-11-20.
  5. Fan, Junfeng; Vercauteren, Frederik (2012). "Somewhat Practical Fully Homomorphic Encryption".{{cite journal}}: Cite journal requires |journal= (help)
  6. Cheon, Jung Hee; Kim, Andrey; Kim, Miran; Song, Yongsoo (2017). "Homomorphic Encryption for Arithmetic of Approximate Numbers". In Takagi, Tsuyoshi; Peyrin, Thomas (eds.). Advances in Cryptology – ASIACRYPT 2017. Lecture Notes in Computer Science. Vol. 10624. Cham: Springer International Publishing. pp. 409–437. doi:10.1007/978-3-319-70694-8_15. ISBN   978-3-319-70694-8. S2CID   3164123.