Hardware, software options emerge for runtime encryption

Hackers are getting better at exploiting encryption gaps that expose plain-text data. New hardware and software runtime encryption solutions aim to close those gaps.

4 encryption keys
Thinkstock

When it comes to cloud applications, enterprises have an encryption gap. Encrypting data while it is in storage is straightforward, even if many companies are still neglecting to do it. So is encrypting data while it is in transit. But what about data in use?

For a cloud application to be able to do anything with the data, it has to see the data in plain-text form. That means that an attacker or insider with access to the application's environment can look over its shoulder, so to speak, and read the data. This is the security gap that Spectre and Meltdown present.

Until recently, the only solution for enterprises was to run the applications client-side, and use the cloud for storage only. Now, several technologies have recently emerged that address this problem from both the hardware and software side. Google, Microsoft and IBM all have solutions either in place or in the works, and several startups are working in the space addressing specific use cases.

"This is a really new area," says Deborah Kish, an analyst at Gartner. Because it's so new, there aren't any market size estimates yet, she says. "I think it's promising, and I think it's a little early for its time."

A secure enclave on a chip

Secure enclaves are already in wide use on smartphones to store critical authentication and payment information. The idea is that encrypted data goes into the protected enclave, where its decrypted, processed, and then encrypted again before it leaves. Because the encryption happens with hardware, it's fast and reliable.

A similar technology is available on the chips powering cloud computing, including those from Intel, ARM and AMD, called trusted execution environments. AMD has its Secure Execution Environment, and ARM has TrustZone. Intel's is Software Guard Extensions, or Intel SGX.

"The enclave is not available to the operating system," says Ambuj Kumar, co-founder and CEO at Fortanix. "If you find a zero-day bug in the operating system, the enclave is secure. If you have a malicious insider with access to the system, the enclave is secure. If you have a physical attacker who is able to get into all my memory, that still does not break runtime encryption because the enclaves are embedded in the CPU."

Fortanix offers a platform that allows existing applications to access the secure enclave. "When data is demanded by the application, it gets decrypted in chunks," he says. "The application thinks it is operating on decrypted data — the data always becomes magically available when the program needs to use that data."

In addition to offering a general-purpose application framework, Fortanix offers pre-built solutions, including a key management appliance and a database product. On June 20, 2018, the company announced an analytics product that supports applications written in Python and R, the most popular languages for artificial intelligence and machine learning applications. Those applications can now be trained in the cloud without compromising the security of the underlying data, Kumar says.

This helps address the data privacy challenges of AI workloads, says Rick Echevarria, general manager of Intel's platforms security division.

GeneTank, which was previously using a software-based approach to runtime security, homomorphic encryption, says that it will now be working with Fortanix. "Fortanix Runtime Encryption supports our vision of enabling a secure and transparent marketplace for genetic and health algorithms and AI services," says GeneTank CEO Anne Kim, in a statement released this morning.

Another early adopter is iExec, a company offering blockchain-based cloud computing to make AI more effecitve. It will use Fortanix's runtime encryption technology to protect apps built on the platform, says Lei Zhang, the company's security R&D manager.

Fortanix is open to supporting other chip sets, but is now focused on Intel SGX, since it's the furthest ahead in this space and has the most support from other vendors. IBM, for example, announced its Data Guard service last December in partnership with Fortanix and it is now accepting sign-ups for early access.

IBM plans to offer initial support for MySQL, Nginx, Forgerock OpenDJ, OpenStack Barbican, and software key managers, ready to go in IBM's Docker registry. In addition, companies can convert their own applications by using a Fortanix tool kit.

Microsoft has Azure confidential computing, also using the Intel SGX technology. Last month, Microsoft announced the availability of SGX-equipped Intel Xeon processors for its East US Azure region. Microsoft says it is also working on the creation of software development tools and an API to make it easier for developers to use the Intel SGX hardware.

Also last month, Google threw its hat into the ring with Asylo, an open source framework for developing secure applications that use trusted execution environments like Intel SGX. Security vendor Gemalto has already begun building tools to take advantage of the new technology. Its SafeNet, for example, is a cloud-based key management service

Another company offering key management as a service is Equinix. Like IBM, Equinix uses Fortanix for the basic technology, and it was the first major Intel SGX-based product on the market when it was released last fall.

Now, about 60 companies are trying out the service, says Imam Sheikh, global head of security products at Equinix. "The use cases are varied — some use it for encrypted credit cards, some for master key encryption for databases."

There haven't been any announcements from Amazon about its use of Intel SGX yet, but the day is still young. "It's getting more popular," says Fortanix' Kumar. "I feel that runtime encryption will be an industry-defining category in the near future."

The downside of secure enclaves

Downsides to hardware-based secure enclaves include limits to how much data an enclave can hold, which can add processing delays. More critically, customers running applications in the cloud don't usually know what hardware the cloud platform vendor is using. This issue is likely to be resolved as cloud providers offer application environments that adjust automatically to whatever hardware the provider is using.

Secure enclaves also don't protect applications from compromise. For example, if someone gets access to a legitimate credential, or finds a bug in the code, they can use the application to get to the data. "No software solution can protect you if you write your code badly," says Kumar.

Then there’s the integrity of the secure enclaves themselves. Researchers at Ohio State recently demonstrated an Intel SGX vulnerability they dubbed SgXSpectre. This exploit of a Spectre-like flaw shows that “when branch prediction of the enclave code can be influenced by programs outside the enclave, the control flow of the enclave program can be temporarily altered to execute instructions that lead to observable cache-state changes.” In other words, it makes unencrypted data in the enclave readable.

Software-based approaches to secure computation in the cloud

Software-based alternatives to secure enclaves are mostly about trying to find ways to do work in the cloud without decrypting the data at all. There are two main ways to do this: homomorphic encryption and multiparty computation.

Homomorphic encryption allows for calculations or searches without having to decrypt the data first. The downside is that it can be very slow.

Multi-party computation splits up the calculation into multiple pieces, using different servers to handle each piece. No one server has the full unencrypted data at any one time. Experts say that it's faster than homorphic encryption but slower than hardware-based alternatives. Most of the delays come from the added communication load.

One company that has a foot in each technology is Inpher, which offers a commercial product, Xor, that uses multi-party computation for secure cloud-based analytics. It also has an open source homomorphic encryption library.

The homomorphic approach is much slower, says Jordan Brandt, the company's cofounder and CEO. "That's why our commercial product is based on secure multi-party computation," he says.

The way it works is that Inpher provides a set of connectors to common analytics platforms and languages such as Tensor Flow, Python and R as well as to common data storage methods like Hadoop clusters, SQL databases or even text files. "We are agnostic to how the data is stored," he says, "and we manage all the refactoring of the way the data is processed, so the end user doesn't have to worry about the complexity of the encryption in use."

Customers include the retail bank ING Belgium and French defense contractor Thales. The latter announced a partnership in April to use Inpher's secure analytics for predictive maintenance. It's difficult to find enterprises that will talk on the record about their use of runtime encryption. Not only is the technology very new, but it can be difficult to implement.

Both homomorphic encryption and multi-party computation can require new application logic. "Not all programs can be converted to these types of computations," says David Archer, principal researcher in privacy and cryptography at Galois, a consulting firm specializing in these kinds of projects.

As a result, most vendors today offer very focused point solutions. For example, Galois' Framework for Information Disclosure with Ethical Security (FIDES) allows researchers to access encrypted datasets in such a way that they can't see the raw data, but can only get the results of queries that fall within proscribed parameters.

"We're working with the Department of Homeland Security (DHS) to impose access control on data, and keeping it encrypted during use, and also doing things like that with the Defense Department," Archer says.

Another vendor, Unbound Tech — formerly known as Dyadic Security — offers a secure, software-based key manager that it bills as an alternative to hardware-based security modules. It uses multi-party computation. "Instead of having the keys in memory, or even keys in one location, we split the keys on multiple locations and then compute on the data without ever bringing the keys together," says company co-founder Nigel Smart.

By focusing on a very specific application, there's no need for customers to rework their applications, he says. "It's a drop-in replacement. We've gone into companies and from the company going, 'Yes, we want to try it,' it can be on the order of 20 minutes."

Unbound plans to expand into offering secured database access, which is another common use case for software-based runtime encryption. Typically, vendors in this space offer a product that sits between a customer's own application and a standard database, such as SQL.

If the customer's application relies completely on the database for its data searches and processing, then it can take advantage of off-the-shelf runtime encryption and won't need any rewriting. If the application pulls data out of a database and then does something to that data with its own internal logic, then converting to homomorphic encryption or multi-party computation is a lot harder. "All the technologies in the world aren't going to take a C program and just run it," he says. "It needs to be converted to the cryptographic protocol."

One company already offering secured access to databases is Baffle, which uses multi-party computation. "We insert a layer between the application and the database; we do not actually change the application at all," says Baffle CEO Ameesh Divatia.

The advantage of using software-based runtime encryption instead of something like Intel SGX is that it doesn't rely on having specific hardware, he says. As Intel SGX becomes more widely available, Baffle might take advantage of it.

Like other vendors in this space. Baffle is relatively new. The company announced support for SQL databases a year ago, support for AWS and Azure last fall, and announced a wildcard search functionality on June 4. The company has about a dozen customers in the financial services and health care sectors in various stages of deployment, says Divatia.

One of Baffle's main competitors is Enveil, which comes out of the defense industry. Enveil, founded in 2016, claims to have found a secret strategy that makes homomorphic encryption fast enough to use. "We had a major breakthrough in the federal government, and had it certified for nation-state use," says Enveil CEO Ellison Anne Williams. "We're really bringing practical homomorphic encryption to bear. And we've made it really easy to plug and play with all types of applications, so you don't have to change your user experience, or how you store your data, or even how you encrypt the data."

Williams says that Enveil provides benchmarking data to customers on a case-by-case basis, but does not make it public. The technology can be used for a broad range of applications, Williams says. "But we see most people doing searches and analytics."

Software-based runtime encryption vendors

The list of companies that provide software-based runtime encryption products and services is growing. We found the following providers:

1 2 Page 1
Page 1 of 2
7 hot cybersecurity trends (and 2 going cold)