IBM Research Europe

IBM Releases Fully Homomorphic Encryption Toolkit for MacOS and iOS; Linux and Android Coming Soon

Share this post:

Often, when I begin explaining fully homomorphic encryption (FHE) to someone for the first time I start by saying that I’ve been working in the field for nearly a decade and yet, I still have to pause to spell it right. So, let’s call it FHE.

Half-kidding aside, FHE really sounds like magic when you hear about it for the first time, but it’s actually based on very sound mathematics. The main difference is that FHE requires a shift in the programming paradigm that we are used to, which makes it a little more difficult to integrate into applications. That was until today thanks to a new toolkit we are making available for MacOS, iOS and soon for Linux and Android. In fact, developers with basic platform tool familiarity can get up and running by following a few simple instructions rather quickly (see video below). It was no small feat to synthesize 11 years of top-notch cryptography research into a streamlined developer experience that is accessible and freely available to anyone in the time most people would spend to brew a pot of coffee or de-clutter a desk.

What is FHE?

The common methods of storing and sharing sensitive data with colleagues and partners have weak links. Today, files are often encrypted in transit and at rest, but decrypted while in use. This provides hackers and insiders with repeated opportunities to exfiltrate unencrypted data. FHE plugs these holes. It allows the manipulation of data by permissioned parties while it remains encrypted, minimizing the time it exists in its most vulnerable state.

In conjunction with other techniques, FHE also makes it possible to selectively restrict decryption capabilities, so people can see only the portions of a file that they are entitled to, and are necessary for them to do their work.

1970s & Beyond

FHE was first discussed in the late 1970s, but the real breakthrough came at the 41st ACM Symposium on Theory of Computing  on 31 May 2009 where it was demonstrated for the first time by cryptographer Craig Gentry in his highly cited, seminal paper Fully Homomorphic Encryption Using Ideal Lattices.

While the paper was exciting news, many in the industry felt that FHE would remain on the cryptographic shelf because it was too slow for everyday usage due to the complexity of the computation and the enormous computing power it required. Thankfully, a small team at IBM Research took that on as a challenge and a decade later FHE performance has improved to a level that is adequate for certain applications, which will only improve with algorithmic advancements and future hardware accelerators.

Use Cases

FHE holds significant promise for a number of use cases such as extracting value from private data; data set intersection ; genomics analytics; oblivious queries (i.e. querying without revealing intent) and secure outsourcing.

FHE is particularly suited to industries which are regulated and make use of private, confidential and “crown jewel” data, such as finance and healthcare, since the technology can make it possible to share financial information or patient health records broadly while restricting access to all but the necessary data.

For example, we recently published a paper with Brazil’s Banco Bradesco SA, where we homomorphically encrypted the data and the model, and showed that it was possible to run predictions with the same accuracy as without encryption and with adequate performance. The result, banks can safely outsource the task of running predictions to an untrusted environment.

Show me the Tool Kits

The new FHE toolkits for MacOS, iOS are now available in GitHub with Linux and Android expected in a few weeks. Each toolkit is based on HELib, the world’s most mature and versatile encryption library, includes sample programs making it easier to write FHE based code.

The iOS toolkit includes an easy to follow and simple demonstration of a privacy preserving search against an encrypted database. The database is a key value store prepopulated with the English names of countries and their capital cities across Europe. Selecting the country will perform a search of the matching capital.

I should point out that these are not perfect or final. We wanted to quickly put them out to get the technology into the hands of early adopters who want to make these concepts less abstract and more concrete as we look to build up a community of users and use cases.

For a developer perspective, read this Q&A by my colleague Eli Dow and if you have questions join our Slack community.

Clients interested in on-going training, knowledge transfer and joint development can sign up for a subscription to the FHE 2020 – Research Engagement Program.

Inventing What’s Next.

Stay up to date with the latest announcements, research, and events from IBM Research through our newsletter.

 

More IBM Research Europe stories

Programming microfluidic functionalities in real-time with virtual channels

Work by our group at IBM Research Europe in Zurich has led to a new method for the rapid implementation of microfluidic operations. By tailoring the potential landscape inside a flow cell, we form so-called “virtual channels” on demand to perform high-precision guiding and transport, splitting, merging and mixing of microfluidic flows. This allows to […]

Continue reading

IBM Differential Privacy Library: The single line of code that can protect your data

IBM published a new release of its IBM Differential Privacy Library, which boasts a suite of tools for machine learning and data analytics tasks, all with built-in privacy guarantees. It's not unlike the the differential privacy the US Census will use to keep the responses of its citizens confidential when the data is made available.

Continue reading

Biological remodelling of liquid water

It is well known that the human body is mostly composed of water: The brain, for example, is 75 percent water and even bones are not “dry” – containing as much as one third water. All of this water maintains the shape and structure of biological cells and is involved in numerous biochemical processes. It […]

Continue reading