top of page

The Pedagogical Palette: Exploring Diverse Teaching Methods

ZKPs & sMPC: The Formidable Pair Behind Aleph Zero’s Privacy-Enhanced Blockchain



Outline:

  • Introduction

  • What are ZKPs?

  • Benefits of ZKPs

  • Limitation of ZKPs

  • What is sMPC?

  • Practical use cases of sMPC

  • Advantages of sMPC

  • Shortcomings of sMPC

  • Liminal: The Combination of ZKPs and sMPC



Key takeaways:

  • Zero-knowledge proof is a cryptographic method that a prover uses to convince the verifier about a claim but doesn’t reveal the content of the data.

  • ZKPs lack in cases where multiple parties need to collaborate.

  • Secure Multi-Party Computation (sMPC) is a cryptographic technique that requires multiple parties to collaboratively perform a single computation task but not reveal their private data to one another.

  • Aleph Zero’s approach in creating the first hybrid privacy layer - Liminal by combining ZKPs and sMPC.



Introduction:


As a newbie in the web3 space, one of the first things you’d probably learn about blockchain technology is that it maintains a transparent and immutable record of transactions. Although the whole context of blockchain technology is meant to breed trust through transparency, it has presented itself as both a blessing and a curse. While transparency gives room for accountability, it also leaves no room for privacy.

One might argue that transactions are kept private as personal identifiers like names, and emails are not exposed, only wallet addresses are transparent and could belong to one of the eight billion people in the world. However, with invested time, it is very much possible to dox the identities behind crypto wallets. But there are now ways in which blockchains can offer full privacy of information exchanged.


Data privacy on the blockchain can be attained in various ways: Zero-Knowledge Proofs (ZKPs), secure Multi-Party Computation (sMPC), Trusted Execution Environment (TEE), Proxy Re-Encryption (PRE), Homomorphic Encryption (HE), and more. Aleph Zero uses ZKPs and sMPC, so this article aims to help you understand these two privacy technologies and how Aleph Zero implements them.



What are ZKPs?



Zero-knowledge proof is a cryptographic method that a prover uses to prove knowledge of certain information to the verifier but doesn’t reveal the data or content of the information. The main essence of this tech is to prove that a piece of information exists but except for the prover, no one else knows the content contained in that information.


This normally shouldn’t be possible. A lawyer won’t be able to prove a statement in court without revealing hard evidence to the judge right? Only with a look at the evidence can the judge verify the actuality of the statement right?

However, it works a different way with ZKPs. Assuming you were in a “ZK court” as a lawyer, you’d just need to convince the judge that you have proof of your claim and convince him to validate your claim but without showing him the hard evidence you might (or might not) have with you.


For a proof to be considered zero-knowledge proof, these factors have to be present:

Completeness: the prover has to convince the verifier of the validity of the information.


Soundness: only true statements can be verified and accepted, hence, in the case of a false statement, the verifier will not be convinced.


Zero-knowledge: the verifier has to have zero knowledge of the information.



Benefits of ZKPs:


ZKPs can be applied in various ways and have proven to be very useful.

  • ZKPs enable privacy in transactions, hence, some coins (termed privacy coins) use them so that transaction details are hidden from the public’s view.

  • ZKPs ensure data privacy by allowing users to selectively choose which data on their credentials to submit to firms requesting them.

  • ZKPs enable scalability for layer 2 rollups that execute transactions off the main chains thereby reducing the amount of data to be stored on the main chains & increasing verification time for transactions.

  • ZKPs can also be employed in KYC/KYB/AML processes for regulatory compliance but without the participants giving out too much information.


These benefits that ZKP provides have made it a topic of interest, especially in recent years, and has thus, increased the number of founders leveraging it for their projects.


Without an ounce of doubt, ZKP has many advantages, but it is not without its limitations.



Limitation of ZKPs:


One limitation of ZKP is its inability to deal with multiple user interactions. This means that ZKPs can only let two parties in on a computation task and this is limiting for a network that intends to allow collaboration from multiple nodes.


This is where sMPC (secure Multi-Party Computation) takes the reins.



What is sMPC?



Like ZKPs, the bedrock of sMPC didn’t start with crypto. In the late 90’s, cryptographers tested sMPC and experimented with it. In the world of blockchain and cryptocurrency, however, sMPC is more or less a foreign term.


Secure Multi-Party Computation (sMPC) is a cryptographic technique that requires multiple parties (nodes) to carry out a single computation task involving their private data (called secret or inputs) but not allowing each other to know their private data. This means that each participant’s (node) data has to be kept private from the rest, but they all have to collaborate on computation and provide a valid output that can be seen by every participating node.


Typically, to work on a computation that involves participants’ data, they’d need to reveal their secret, but this is avoidable through the use of cryptographic algorithms. For instance, Shamir’s Secret Sharing Scheme and Threshold Signature Scheme are examples of cryptographic primitives that allow participating nodes to conduct computations without the need to disclose their secrets (data).



Practical Use Cases of sMPC:


Voting: In electronic voting, sMPC can be utilized such that the winning candidate (the output) is revealed but each participant’s vote is not revealed.


Scientific Research: sMPC proves useful for researchers across different research institutions, hospitals, and universities who are looking to work together on a shared dataset. The data will be encrypted and shared among the researchers who then compute them individually, yet collaboratively. Of course, each researcher has his/her private data they’re looking to utilize to solve the shared computation but this private data will be kept secret from one another. The result (output) of the computation may (or may not) be made public to the researchers.


Artificial Intelligence (AI)/ Machine Learning (ML): Private data can be used for machine learning models and AI models to train them and get insights while maintaining the integrity of the data.


Private Bidding & Auction: sMPC technology can be applied in auctions where each participant’s bid needs to be kept secret. The earliest and most popular large-scale application of sMPC was at the Danish Sugar Beet Auction which happened in 2008. You can read more about it here.


Data Analysis by FinTech Companies: it is no news that FinTech companies utilize their customers’ data to get a better understanding of their behavior. In a case where more insights from non-customers are needed, FinTech companies can collaboratively cross-analyze each other’s data without really disclosing their customers’ private data, using sMPC.


Storing Digital Assets: if you’re familiar with how multi-sig wallets work, this shouldn’t be difficult to comprehend as they are similar. Crypto wallets used to store assets can be made to be compatible with sMPC such that the private keys of a user’s wallet are distributed among various trusted parties (custodians).

For any action to occur within that wallet, all or some of these custodians will be required to use sMPC to agree and sign the transaction.



Advantages of sMPC:

  • Data privacy: this is the most obvious advantage of sMPC. It allows users’ data to be kept confidential even in cases when they’re being utilized for public benefit.


  • Meet the standard for data protection regulations: According to reports, over 90% of companies are not compliant with the various data protection regulations set by regulatory bodies in charge to ensure the safety and privacy of people’s data. Organizations that use technologies like sMPC to ensure their users’ data protection will have a lower risk of being tagged and listed as non-compliant.


  • Efficiency and higher accuracy: being able to collaborate with others to provide answers for computational tasks is more efficient than working alone and there are more chances of coming up with more accurate answers.


  • Better security


  • No trade-offs between data usability and data privacy: typically, private data cannot be accessed and because they are not accessible, they cannot be used, even for good. This technology - sMPC makes it possible to do both. Data can be kept secret, yet still be used.



Shortcomings of sMPC:


Like with ZKPs, sMPC has shortcomings of its own like computational overhead, and the delay caused by various rounds of communication across the nodes making it slow.



Liminal: The Combination of ZKPs and sMPC:


Acknowledging the need for efficiency and ensuring strict privacy for users’ data on all fronts, Aleph Zero combines the best features of ZKPs and sMPC. The type of ZKP that Aleph Zero employs is zk-SNARK.


Using just zk-SNARK is not sustainable for transactions that involve multiple parties as zero-knowledge tech involves two parties. Also, it is not efficient for cases that involve a global private secret because, in ZKPs, at least one party (the prover) must know the secret but a global private state requires that no single participant be aware of the secret.



Aleph Zero’s native privacy layer is called Liminal. It acts as a layer 2 on Aleph Zero that offers complete data privacy and security for Aleph Zero’s intra and inter-network transactions. Liminal is referred to as multi-chain because it allows interoperability of other blockchains.


Liminal is a software-based privacy layer for Aleph Zero that jointly uses zk-SNARKs and sMPC in instances where they each thrive. Most transactions that happen on Aleph Zero are based on the zk-SNARKs and only a few cases that require strict privacy use sMPC. Aleph Zero uses the Shamir Secret Sharing Scheme in sMPC cases that allows participating nodes to perform computations without revealing their secret (data). Thereby, this layer 1 blockchain explores ZKPs’ speed and sMPC’s total privacy feature that allows people to securely collaborate.


Conclusion:


Aleph Zero is, no doubt, hacking it when it comes to privacy. The blockchain’s capability far exceeds any benchmark and as such, it comes as no surprise why it has gained the attention of many.

If you wish to hear from the horse’s mouth on how Aleph Zero is exploring ZKPs, sMPC, and the DAG consensus algorithm, listen to this podcast where the co-founders of Aleph Zero, Adam Gagol, and Matthew Niemerg sat with Anna Rose of Zero Knowledge Podcast.


Comments


Recommended

Subscribe Us

Get the latest creative news from CodeTavren magazine