For enterprise blockchains, granular privacy is a core requirement. This week Sepior unveiled a new technology to protect the keys used to encrypt private data. The off-chain key management solution potentially can work with any blockchain technology. To date, Sepior has developed a plugin for easy integration with Hyperledger Fabric.
For valuable data, hardware security modules are often used to protect keys, but they’re costly. Sepior’s award-winning cryptographers have created a software alternative. The start up was founded in Denmark in 2014, and it’s a cryptography business rather than a blockchain company.
The need: smart contracts and privacy
Sepior CMO Frank Wiener explained the need that Sepior is addressing: “With any of the blockchain platforms you’ve got a wide variety of users who are going to be accessing that [smart] contract at different phases in the process. Each of those smart contracts has data fields that get populated. And people who are responsible for the overall contract don’t necessarily want all parties who have access to the contract to have access to all of the fields of data and all the information.”
“We can encrypt an entire document or individual fields of data that are part of the smart contract and then we can create key management profiles that say certain types of users will have visibility to certain fields. In other fields they won’t. In the ones that they don’t have visibility to, they won’t receive the keys. So that content won’t be decrypted.”
The keys that don’t exist
But Sepior’s new product isn’t about smart contracts. It’s about keys used to unlock the data, as CEO Ahmet Tuncay explained: “The Achilles heel in every one of these approaches, is how do you protect those keys? Anybody can come up with any scheme to encrypt at a super granular level every little object, but then you might end up with a billion keys.”
“And as we know from the lessons learned from cryptocurrency, if you don’t do a good job protecting your keys, you don’t have security at all. And using MPC [multi-party computation] these keys actually don’t exist in one place to be stolen.”
Multi-party computation
Well, the keys do exist, but they don’t. But let’s figure out the MPC aspect first.
Sepior is a spin-out from the University of Aarhus in Denmark, and the co-founder and CTO of the company is Jakob Illeborg Pagter. While at a related company called Partisia, Jakob created the first large-scale commercial application of secure multi-party computation. It deployed the Partisia Contract Exchange for the Danish sugar industry. Essentially it’s an auction process for sugar.
And auctions are a great way to explain MPC. What if you had a decentralized auction and wanted to calculate the highest price any bidder is willing to pay, called the “clearing price”, without revealing the individual bids? It’s almost like playing cards without ever showing the cards, yet knowing who has the winning hand. So the concept is there are fragmented pieces of distributed data, and yet calculations can be performed on the data as if you had all of it.
Back to the keys
If you apply the same concept to encryption keys, you could have three or more servers, and each of them stores a piece of the key. CMO Wiener explains: “And so with multi-party computation what it does is it actually computes and generates shares [pieces] of one key across multiple servers that could be in different cloud service provider clouds.”
So to unlock any data, those pieces have to come together to form a whole. But the solution involves threshold key management, which means that if some of the servers are offline, it will still work, provided that it meets the threshold you’ve set. And that’s what Tuncay meant by the keys don’t exist on any server.
Tuncay continued: “It’s almost about as close to hack-proof as you can get because they’re distributed in an environment that’s based on MPC – the notion of computing with encrypted key shares without ever bringing the shares together. Applying this notion to solve enterprise blockchain privacy and scalability problems is the innovation here. It isn’t so much that you have your granular encryption of objects within a smart contract, but it’s really that you have a super secure virtualized key management environment where there’s no single attack surface.”
Other MPC activity
MPC is relatively new, as in the last ten years. But it’s an area that’s attracting attention in the blockchain community. The Enterprise Ethereum Alliance recently published a preliminary specification about doing secure computation off-chain. MPC was one of three major areas covered. The IEEE is also exploring it for health applications in blockchain. Neither organization is particularly looking at the technology for managing keys.
Blockchain startup Enigma is creating “secret” smart contracts with MPC baked in. They believe it’s a better solution than the Zero-Knowledge Proofs that are popular in the blockchain world.
One of Sepior’s co-founders Ivan Damgård literally wrote the book on MPC. The academic created some widely used cryptographic primitives (SHA-1), and has been one of the leading lights in secure multiparty computation since the early days of the concept.
The alternative
For critical applications, the standard way to protect keys is using hardware security modules (HSM). CEO Tuncay explained: “Today a lot of work is being done with privacy-preserving DLT, but it’s using HSMs. It’s basically legacy key management for modern DLT. And this has many problems. It’s got the same problems as HSM-based enterprise key management, which is cost, complexity, skills, infrastructure, redundancy, scale. So we think that the best way to solve a distributed ledger problem is with the distributed key management scheme.”
Wiener explained the scale of the cost of HSMs. “They’re extremely expensive, and if you’re deploying it in this environment, you’ve got to deploy redundant systems and multiple clouds, and these systems are a couple hundred thousand or more per instance. So you can easily get into a million to a million plus type of expense.” So Sepior believes their solution is a low-cost alternative. Because it’s software running in the cloud, it’s also very scalable.
Cryptography and particularly Zero-Knowledge Proofs (ZKP) and MPC are two areas which are gaining increasing prominence for blockchain development. To date, ZKP has attracted more attention, but it might just be MPC’s time for the spotlight. So Sepior’s application of MPC to threshold signatures for blockchain key management could be timely.