Last time we analyzed how Fully Homomorphic Encryption (FHE) technology works.
However, many people still confuse FHE with ZK and MPC encryption technologies, so the second thread plans to compare these three technologies in detail:
FHE vs ZK vs MPC
First, let’s start with the most basic questions: - What are these three technologies? - How do they work? - How do they work for blockchain applications?
1. Zero-knowledge proof (ZK): Emphasis on "proof without disclosure"
The proposition explored by zero-knowledge proof (ZK) technology is: how to verify the authenticity of information without revealing any specific content.
ZK is built on a solid foundation in cryptography. Through zero-knowledge proof, Alice can prove to the other party, Bob, that she knows a secret without revealing any information about the secret itself.
Imagine a scenario where Alice wants to prove her credit to Bob, an employee at a car rental company, but she doesn’t want to go to the bank to get a statement. At this time, the “credit score” of the bank/payment software is comparable to her “zero-knowledge proof”.
Alice can prove that her credit score is good without Bob knowing anything about it, without showing her account statements. This is zero-knowledge proof.
If applied to blockchain, you can refer to the previous anonymous currency Zcash:
When Alice transfers money to others, she needs to be anonymous and prove that she has the power to transfer these coins (otherwise it will lead to double spending), so she needs to generate a ZK proof.
Therefore, after seeing this proof, miner Bob can still put the transaction on the chain without knowing who she is (that is, zero knowledge of Alice's identity).
2. Multi-party secure computation (MPC): Emphasis on “how to calculate without leaking”
Multi-party secure computing (MPC) technology is mainly used for: how to allow multiple participants to compute securely together without leaking sensitive information.
This technology allows multiple participants (such as Alice, Bob, and Carol) to jointly complete a computational task without requiring any party to reveal their input data.
For example, if Alice, Bob, and Carol want to calculate the average salary of the three of them without revealing their specific salaries, how can they do it?
Each person can divide his or her salary into three parts and exchange two of them with the other two people. Each person adds up the numbers they received and then shares the sum.
Finally, the three people add up the three results and get the average, but they are unable to determine the exact salary of anyone other than themselves.
If applied to the encryption industry, MPC wallet uses this technology.
Taking the simplest MPC wallet launched by Binance or Bybit as an example, users no longer need to save 12 mnemonics. Instead, it is a bit like changing the private key into a 2/2 multi-signature, with one copy on the user's mobile phone, one copy on the user's cloud, and one copy on the exchange.
If a user accidentally loses his or her mobile phone, at least the cloud + exchange can restore it.
Of course, if higher security is required, some MPC wallets can support the introduction of more third parties to protect private key fragments.
Therefore, based on the cryptographic technology of MPC, multiple parties can use private keys securely without the need to trust each other.
3. Fully Homomorphic Encryption (FHE): Emphasis on “How to encrypt in order to outsource”
As I mentioned in my previous thread, fully homomorphic encryption (FHE) is used in: how do we encrypt sensitive data so that after encryption, it can be handed over to an untrusted third party for auxiliary calculation, and the result can still be decrypted by us. Previous article portal: https://x.com/0x_Todd/status/1810989860620226900…
For example, Alice does not have computing power and needs to rely on Bob to do the calculations, but does not want to tell Bob the truth. Therefore, she can only introduce noise into the original data (do any number of addition/multiplication encryption), and then use Bob's powerful computing power to process the data. Finally, Alice decrypts it herself to get the real result, while Bob knows nothing about the content.
Imagine if you need to process sensitive data, such as medical records or personal financial information, in a cloud computing environment, FHE is particularly important. It allows the data to remain encrypted throughout the entire processing process, which not only protects the data security but also complies with privacy regulations.
Last time, we focused on analyzing why the AI industry needs FHE. So what applications can FHE bring to the crypto industry? For example, there is a project called Mind Network that received an Ethereum Grant, and it is also a project of Binance Incubator. It focuses on a native problem of the PoS mechanism:
PoS protocols like Ethereum have 1 million+ validators, so there is no problem. But for many small projects, the problem comes because miners are lazy by nature.
Why do I say that? In theory, the work of a node is to diligently verify whether each transaction is legal. However, some small PoS protocols do not have enough nodes and include many "big nodes".
Therefore, many small PoS nodes have discovered that instead of wasting time calculating and verifying by themselves, it is better to directly copy the ready-made results of large nodes.
This will undoubtedly lead to extremely exaggerated centralization.
In addition, such as voting scenes, there are also signs of "following".
For example, in the previous MakerDAO protocol vote, because A16Z had too many MKR votes, its attitude often played a decisive role in certain protocols. After A16Z voted, many small votes were forced to follow the vote or abstain, which was completely unable to reflect the true public opinion.
Therefore, Mind Network uses FHE technology:
Even if PoS nodes do not know each other's answers, they can still use machine computing power to complete block verification and prevent PoS nodes from plagiarizing each other.
or
Even if voters do not know each other's voting intentions, they can still use the voting platform to calculate the voting results and prevent vote following.
This is one of the important applications of FHE in blockchain.
Therefore, in order to achieve this function, Mind needs to rebuild a re-staking nesting doll protocol. Because EigenLayer itself will provide "outsourced node" services for some small blockchains in the future, if combined with FHE, the security of PoS network or voting can be greatly improved.
To make an inappropriate analogy, the introduction of Eigen+Mind into a small blockchain is a bit like a small country that cannot handle its own internal affairs and therefore introduces foreign troops.
This is also one of the differences between Mind and Renzo and Puffer in the PoS/Restaking branch. Mind Network started later than Renzo and Puffer, and just launched its mainnet recently. Relatively speaking, it is not as popular as during the Re-taking summer.
Of course, Mind Network also provides services in the AI branch, such as using FHE technology to encrypt data fed to AI, and then allowing AI to learn and process the data without knowing the original data. A typical case includes cooperation with the bittensor subnet.
Finally, let’s summarize:
Although ZK (zero-knowledge proof), MPC (multi-party computation), and FHE (fully homomorphic encryption) are all advanced encryption technologies designed to protect data privacy and security, they differ in application scenarios/technical complexity:
Application scenarios: ZK emphasizes "how to prove". It provides a way for one party to prove the correctness of a certain information to another party without revealing any additional information. This technology is very useful when it is necessary to verify permissions or identities.
MPC emphasizes "how to calculate". It allows multiple participants to perform calculations together without revealing their respective inputs. This is useful in situations where data cooperation is required but the data privacy of all parties must be protected, such as cross-institutional data analysis and financial auditing.
FHE emphasizes "how to encrypt". It makes it possible to delegate complex calculations while keeping the data encrypted at all times. This is especially important for cloud computing/AI services, where users can safely process sensitive data in a cloud environment.
Technical complexity: Although ZK is theoretically powerful, designing an effective and easy-to-implement zero-knowledge proof protocol can be very complex and requires deep mathematical and programming skills, such as various "circuits" that people don't understand.
MPC needs to address synchronization and communication efficiency issues when implementing it, especially when there are many participants, the coordination cost and computational overhead can be very high.
FHE faces huge challenges in terms of computational efficiency, and its encryption algorithm is relatively complex, and it was not finalized until 2009. Although it is very attractive in theory, its high computational complexity and time cost in practical applications are still the main obstacles.
To be honest, the data security and personal privacy protection we rely on are facing unprecedented challenges. Imagine that without encryption technology, the information in our text messages, takeouts, and online shopping processes would be exposed. It's like an unlocked door, anyone can enter at will.
I hope that friends who are confused about these three concepts can completely distinguish these three pearls on the holy grail of cryptography.