1. What is Zero Knowledge?
Cryptography basics, an introduction to zk & its applications
We have created a short summary of our Zero-Knowledge blockchain apps episode containing all essential information you need to basics. Let's get started!
History & Basics
Cryptography is the study of creating and sending secure messages in the presence of people who might try to harm or interfere with communication.
Cryptography is the practice of protecting information by transforming it into an unreadable format. In the past, this was mainly used to keep messages confidential, but it can be used for other purposes such as authentication and digital signatures.
There are two types of ciphers: transposition and substitution. Transposition ciphers rearrange the letters in a message, while substitution ciphers replace letters with other letters.
- Cryptography is the process of taking data and scrambling it up with an algorithm. This creates encrypted data, which is difficult to unscramble without the specific parameters that were used when encrypting the data.
2. zk Applications
- Security
- Patient Record Encryption
- Rollups
- Proof of Solvency
- Reputation Systems
- Voting
- Identity Verification
- Proof of Attack Malware Lab
- Gaming
- Providing Private Data to Smart Contracts (Zorakles)
- Private Transactions on Public Blockchains
- Tax Payments
- Marketing Data
3. zk-Privacy
Private Transactions on Public Blockchains
Verifying the data on a blockchain is done by checking the commitment. The commitment is a record of the data that has been verified. The actual data is not stored on the blockchain, which keeps it hidden.
Types of Digital Privacy
Pseudonymity: One consistent name
- Pro - Reputation
- Con - Linkable to you
True Anonymity: Unlinkable - System can't tell if 2 txs are from the same person
- Reputation is possible but way more complex
- Done through cryptographic commitments & zkps
Negative Aspects
- Criminal Activity (Tax Evasion, Ransomware)
4. zk-Scalability
ZK-rollups are a way to execute transactions outside of the mainnet. This is done by having batches of transactions committed to an on-chain rollup contract. This transaction record is immutable, similar to the Ethereum blockchain, which creates the ZK-rollup chain.
zK-rollups core architecture:
On-chain contracts are used in the ZK-rollup protocol to store rollup blocks, track deposits, and monitor state updates.
Off-chain virtual machines are used with the ZK-rollup protocol used as a separate virtual machine for transaction execution and state storage that is independent of the Ethereum Virtual Machine (EVM).
5. zk-SNARKs
Succinct Non-interactive Arguments of Knowledge.
zk-SNARKs is a proof architecture that allows you to demonstrate ownership of specific knowledge, like a secret key, without disclosing that information. You don't have to interact with the prover or the verifier to do this.
6. zk-STARKs
Scalable Transparent Arguments of Knowledge
zk-STARKs is a type of cryptographic-proof technology that allows users to communicate validated data or execute computations with a third party without the data or analysis being revealed to the other party.
Summary
Zero Knowledge (zk) is a type of cryptography that can be used for various purposes, such as privacy, security, scalability, and more. Zk applications include private transactions on public blockchains, patient record encryption, and zk-rollups for increased scalability.
Zk-privacy can be achieved through pseudonymity and true anonymity using cryptographic commitments and zero-knowledge proofs. Zk-scalability is enabled through ZK-rollups and ZK-SNARKs/ZK-STARKs. Finally, Zk-STARKs is a more scalable version of ZK-SNARKS that allows users to communicate validated data or execute computations with a third party without any risk of exposure.
Thanks to our lead host Tamara Ringas, a zero-knowledge cryptography wizard, we have a series of ZK episodes on our YouTube channel. Make sure to check them out, if you are interested in ZK!