In this video, we go from relatively low-tech privacy solutions, like using multiple IDs, to high-tech privacy solutions on the blockchain. For privacy-conscious users of blockchain and cryptoassets, there is one central challenge: Providing cryptographic proof of ownership, but without revealing too much information to the network. This is where zero-knowledge proofs come in. A zero-knowledge proof is a sophisticated method for authenticating a transaction without revealing much details about it. So, let's break this down into its most basic function. Let's say, a gentleman named Allen is colorblind, but doesn't know it. Bettina wants to prove to Allen that there's a difference between green and red. She gives Allen two snooker balls, one green and one red, but they're otherwise identical. Allen doesn't notice a difference and he's pretty skeptical. Bettina wants to prove they're different colors, but she doesn't want Allen to learn which is which or at least not just yet. So, here's the proof system. Allen holds one snooker ball in each hand and puts them behind his back. He either switches the balls between his hands or just leaves them be. There's an equal chance of switching or not. He then brings them out from behind his back. Bettina now has to guess whether Allen switched the balls, but Bettina can know with certainty whether Allen switched the balls just by looking at the colors because she is not colorblind. If the balls were identical, if they were the same color, she'd be able to guess the correct color 50 percent of the time. So, one try wouldn't be enough to get Allen convinced. Allen and Bettina must repeat this proof multiple times. With each time Bettina gets it right, the chance it was just plain luck goes away. Allen eventually is convinced that the balls are different colors. The proof is zero-knowledge because Allen never learns which ball is green and which one is red. He just knows they're different colors. In the blockchain world, zero-knowledge is critical for, among other things, voting applications. In an election on a blockchain, each voter receives a voting token. When casting that vote, the token holder needs to verify that she's the legitimate owner of the token. But with secret suffrage, the validator must not know the owner's identity. Since all network member information is recorded in public blockchains, this poses a problem. That knowledge might let the validator trace the actual vote back to the voter, which is problematic because votes must be trusted but they also must remain anonymous. Though pioneered by Zcash, zero-knowledge proofs are catching on in other platforms. For example, developers of the public blockchain Ethereum are already including the option to use a generalized version of zero-knowledge proofs on their own blockchain. The concept they employ is something called zero-knowledge succinct non-interactive argument of knowledge, or, conveniently, ZK-SNARK for short. Okay. Not the most sonorous or lyrical sounding name, but very important nonetheless. A ZK-SNARK is a zero-knowledge proof protocol. It lets users reveal only the necessary information to the verifier and no more. Zcash is one example of a cryptocurrency based on these zero-knowledge proofs. When would a company want such an option? Let's say, an enterprise stores smart contracts on a blockchain. A lender wants to assess the credit of that enterprise. The lender also asks about the payments the enterprise is expecting based on those existing contracts. The enterprise may not wish to reveal all the counterparties or other details of the contracts to the lender. Zero-knowledge proofs present the solution. The enterprise can prove it's the recipient of upcoming payments without revealing all the business details it may rightly want to keep private. Another high-tech concept offering privacy is a linkable ring signature. A ring signature is created when the sender of a transaction is mixed together with a random collection of other IDs that basically serve as a decoy. This process produces a unique digital signature for the transaction, but it blurs the identity of the real sender. In signing the transaction, the sender can prove that she's the rightful owner of the assets being sent without revealing which ID is hers. Linkability also prevents double spending. Monero is an example of a blockchain-based cryptocurrency offering this alternative. To wrap up, there are multiple solutions to ensure privacy on the blockchain. It could be procedural, like using multiple IDs, or it could be technological, like the zero-knowledge proofs we just reviewed. If you have any questions about the ideas that we've discussed here, please head to the online discussion forum, we'd love to hear from you.