With everything that is going on in the world you may have missed a potentially innovative announcement by IBM back in June 2020, where IBM stated that it had successfully completed "field trials" of a "fully homomorphic encryption algorithm."
What is Fully Homomorphic Encryption?
Homomorphic encryption is a specific type of encryption among the many types of cryptographic algorithms. Data, which has been encrypted by homomorphic systems, exhibit special attributes. To put it simply, fully homomorphic encryption (FHE) retains the relationship between parts of a dataset, so data points can be worked on by a third party without being decrypted.
Here's an example. Let's take a (very) small dataset with just three data points — say 5, 7, and 9. If you encrypt this collection with an FHE algorithm, send the three encrypted values to a third party, and ask them to perform processing on them, the third party will arrive at a value that you can decrypt and that will be correct. For instance, if you ask the third party to add the first and second values, then multiply the result by the third value and return the result to you, you can then decrypt that result (108).
Why is FHE Important?
At first glance, the value offered by FHE might seem pretty niche. But, the ability to work with third-party data without decrypting it has considerable advantages for many organizations.
At the most basic level, FHE solves the "sysadmin problem." If you are completing your computation on a system managed by a third party, the root-privileged operators at the third party generally have access to the data, and you do not. Encryption at rest prevents access to the data outside the scope of whatever computation is going on at that specific moment — but with root privileges, a system operator can scan or alter the contents of RAM to gain access to whatever data is currently being operated on.
With FHE, you can perform those calculations without the actual data ever being exposed to the remote system at all. Obviously, this solves the sysadmin problem thoroughly. When the machine itself never has access to the decrypted data, neither do its operators.
Before going further, let’s consider the three states of data:
- data in flight
- data at rest
- data in use
For many years, encryption protocols incorporated into low-cost VPNs, HTTPS, and TLS have been able to provide protection for the first two. However, data in use is very different.
If FHE becomes a feasible, mainstream technology, it will go a long way toward protecting data at rest. It could be passed between and used by dozens — if not hundreds — of people/companies without anyone but the original owner having access.
All this said, the FHE system tested by IBM has some significant drawbacks that may limit how widely it can be used, at least for the moment.
Some of these limitations are shared with any FHE system, and arguably any system that aims to allow third parties to work with encrypted data. One of these is that, given access to enough data — even if this remains encrypted — a sufficiently capable person or organization could manage to reverse engineer the encryption scheme. Therefore, security experts recommend encrypting emails instead of the servers.
The second problem, and the one that will be the limiting factor for FHE, at least in the near future, is the sheer amount of processing power that IBM's system requires. Though IBM is keen to stress that their algorithm only increased the required computing resources by a little in relation to individual data, these requirements are additive. In realistic tests, research indicates that roughly 40 to 50 times the computing power and 10 to 20 times memory would be required to do the same work as compared to unencrypted models.
A Final Word
Overall, IBM's announcement hints at what could be an exciting step forward when it comes to ensuring the security of outsourced data processing. The systems that exist to solve the sysadmin problem, such as AMD's Secure Encrypted Virtualization, don't offer the same level of capability that FHE data does. While SEV doesn't suffer from the performance issues that affect FHE, third parties are unable to perform the same kind of advanced data processing on SEV data.
In this context, FHE offers a way to dramatically increase security, but only if some of the current limitations can be sorted out. One area of active research is in improving the efficacy of FHE algorithms. Another is in the policy implications of the enhanced capabilities it offers. If both streams of research bear fruit, we could quickly see the widespread adoption of FHE across many sectors.
More on FHE
For more information on FHE, visit the links below:
- “IBM Fully Homomorphic Encryption Toolkit Now Available for MacOS and iOS”, InfoQ
- “Homomorphic Encryption Comes to Linux on IBM Z”, IBM Research Blog
- “IBM Security allows companies to experiment with fully homomorphic encryption”, Help Net Security
For an introduction to homomorphic encryption, check out this June 2020 article also by Mark Wilson.