IBM Opens Homomorphic Encryption Toolkit for Linux

IBM company announced about opening the toolkit source code FHE (IBM Fully Homomorphic Encryption) with system implementation full homomorphic encryption to process encrypted data. FHE allows you to create services for confidential computing, in which data is processed encrypted and does not appear in an open form at any stage. The result is also generated encrypted. The code is written in C++ and spreads under the MIT license. In addition to the Linux version, similar toolkits for MacOS ΠΈ iOS, written in Objective-C. A version is expected to be published soon. Android.

FHE supports complete homomorphic operations that allow you to perform addition and multiplication of encrypted data (i.e., you can implement any arbitrary calculations) and get an encrypted result at the output, which would be similar to encryption of the result of addition or multiplication of the original data. Homomorphic encryption can be considered as the next stage in the development of end-to-end encryption (end-to-end) - in addition to protecting data transmission, it is possible to process data without decrypting it.

On the practical side, the framework can be useful for organizing confidential cloud computing, in electronic voting systems, in anonymized routing protocols, for encrypted query processing in a DBMS, for confidential training of machine learning systems. As an example of the use of FHE, the organization of the analysis of information about patients of medical institutions in insurance companies is mentioned without the insurance company gaining access to information that could identify individual patients. Also упоминаСтся development of machine learning systems to detect fraudulent transactions with credit cards based on the processing of encrypted anonymous financial transactions.

The toolkit includes a library HElib with the implementation of several homomorphic encryption schemes, an integrated development environment (work is carried out through a browser) and a set of examples. To simplify deployment, ready-made docker images based on CentOS, Fedora and Ubuntu have been prepared. Instructions for building the toolkit from source and installing it on a local system are also available.

The project has been developing since 2009, but it has only now been possible to achieve acceptable performance indicators that allow it to be used in practice. It is noted that FHE makes homomorphic computing available to everyone, with the help of FHE, ordinary corporate programmers will be able to do the same work in a minute that previously required hours and days when attracting experts with an advanced degree.


Among other developments in the field of confidential computing, one can note project publication OpenDP with the implementation of methods differential privacy, allowing to perform statistical operations on a data set with a sufficiently high accuracy without the possibility of identifying individual records in it. The project is jointly developed by researchers from Microsoft and Harvard University. The implementation is written in Rust and Python and supplied under the MIT license.

Analysis using differential privacy methods enables organizations to produce analytical samples from statistical databases, without allowing them to extract the parameters of specific individuals from the general information. For example, in order to identify differences in patient care, researchers can be provided with information that allows comparison of the average amount of time patients spend in hospitals, while maintaining the confidentiality of patients and not allowing identification of information about them.

Two mechanisms are used to protect identifiable personal or confidential information: 1. Adding a small statistical "noise" to each result that does not affect the accuracy of the extracted data, but masks the contribution of individual data elements.
2. Use of a privacy budget that limits the amount of data returned per request and prevents additional requests that may violate confidentiality.

Source: opennet.ru

Add a comment