Building A Bulletproof Crypto Industry

News, Opinion | October 4, 2019 By:

As the state-of-the-art in ZKP cryptography, Bulletproofs can accelerate adoption rates and alleviate concerns of businesses when it comes to transactional security, writes Benedikt Bünz, inventor of Bulletproofs and Head of Research at Findora.

The Challenge

Bitcoin’s biggest feature is that everyone can see all transactions and independently verify that they are correct. This transparency has powered the decentralized finance movement, initiated by Satoshi Nakamoto, a little over ten years ago. At the same time, this feature may arguably be the biggest downfall for Bitcoin—and other cryptocurrencies. 

So why is this attribute hindering crypto adoption? Well, if I receive my salary in cryptocurrency, my colleagues and friends can see exactly how much I make. Similarly, if I am a supermarket owner and I am making forecasts for how many tomatoes I think I will sell next summer, my competitors can feasibly identify the quantity I am purchasing, how much I am paying, and how much I am subsequently charging per unit. While cryptocurrencies often obscures the sender and receiver’s identity, they certainly don’t hide them and both research and commercial enterprises have shown how to effectively deanonymize users. Paying with Bitcoin means business secrets and strategies are revealed to competitors. 

For this reason, bitcoin transactions made using Satoshi’s exact original formula are not a practical solution for individual or business-financial transactions.

Zero-Knowledge…Sudoku

Thankfully, the blockchain landscape has evolved to address this inherent limitation. Bulletproofs are a highly efficient and secure form of zero-knowledge proofs (ZKPs) that serve to transform Nakamoto’s invention into something the everyday person and businesses can actually use and benefit from. With Bulletproofs, the validity of a cryptocurrency transaction can be proven without sharing any of the underlying details of the transaction. 

We can use the Sudoku example to explain how ZKPs work: let’s pretend that if I want to send you cryptocurrency, a Sudoku puzzle needs to be completed in order to secure the transaction. But, the numbers in the Sudoku puzzle contain sensitive information that neither you, or I, want to share publicly. By employing a zero-knowledge proof protocol in the process, I can prove to you that I have solved the puzzle and that my solution is correct, and I can do this without sharing the exact numbers in the Sudoku. 

So, now I can send and receive payments in cryptocurrency, without the worry that anybody can access the numbers in the puzzle—my neighbours don’t know how much I paid for my new house, and the supermarket owner’s competitors can’t access their business secrets and strategies. 

Imbuing security in the crypto space 

As the field of zero-knowledge cryptography continues its rapid expansion, exciting new implementations can deliver higher levels of security and efficiency. For example, Bulletproofs are a short and more efficient version compared to previous protocols, making cryptocurrency transactions much more secure and less susceptible to fraud. 

zk-SNARKs (zero-knowledge succinct non-interactive arguments of knowledge) are another form of ZKPs, brought to mainstream attention by privacy-centric digital currency Zcash. As the first widespread application of zk-SNARKs, Zcash gives a showcase demonstration of the power of ZK cryptography when implemented in a financial instrument. Unlike Bulletproofs, all zk-SNARKs we have currently require a trusted setup. 

Why is the absence of a trusted set-up in Bulletproofs so significant? The trusted setup generates a proving key, used by the prover to prove the transaction is correct. The prover also generates a short verification key that the verifier uses to verify the proof. This may sound perfectly reasonable, but the system is secure only if the setup is not subverted and the person doing the setup does not collude with the prover. 

With zk-SNARKs, bad actors can manipulate the information collated in the trusted setup to create money out of thin air. Thus, a transaction can be fully verified to say ‘Person A’ sent ‘Person B’ $150, when they have in reality only sent ‘Person B’ $50. The transaction would validate that $50 + $50 = $150. The fear of a “broken” trusted setup isn’t just academic but Zcash actually suffered from this. 

In contrast, Bulletproofs make it near impossible for bad actors to cheat, thus making cryptocurrency transactions highly secure and confidential, by eliminating the use of a trusted setup. 

Bulletproofing financial transactions and accelerating adoption

Satoshi gave us something with the potential to change the way we do business forever, making it fairer, more secure, and more transparent. The ascent of ZKP cryptography has been fundamental in addressing long-standing privacy concerns that have dampened the scale of enterprise adoption of distributed ledgers. Bulletproofs, as the state-of-the-art in ZKP cryptography, can accelerate adoption rates, and alleviate concerns of businesses when it comes to transactional security.