0x0a. Confidential transactions with zkSNARKs [Blockchain Developers Meetup]

Posted underEvents &Meet-ups
Cover Image for 0x0a. Confidential transactions with zkSNARKs [Blockchain Developers Meetup]
Blockchain Developers Meetup 10 - Confidential Transactions with zkSNARKs
Blockchain Developers Meetup 10 – Confidential Transactions with zkSNARKs

After a recent talk Milen had on Zero Knowledge Proofs in front of the Bulgarian developers community, we decided to dive deeper into this topic and discuss further on our monthly meetup how on-chain confidential transactions could be achieved using zero knowledge protocols.

So last week on our 10th Blockchain Developers Meetup we did that.

Developers news digest

As usual we stared with covering the latest news in the blockchain space which directly relate to us as developers:

  • Pocketh: a “pocket knife for auditing smart contracts” from Zeppelin
  • Sandcastle, an Eth SQL language pre-alpha available in Remix.
  • A Scratch3 extension to make it easy and kid-friendly to build games on Eth
  • Solidity v0.5.8 “further completes ABIEncoderV2, SMTChecker and Yul and improves the optimizer.” Also Solidity v0.4.26 backports bugfixes for v4
  • Truffle and Ganache new releasesVitalik’s design for a minimal mixer
  • Prysmatic labs – new update on ETH 2.0 – they’ve outlined a number of milestones saying new developers are welcome to come on board for testing
  • ZCash – Significant effort put towards final review, testing and documenting this week’s 2.0.5 release. Several bugs were discovered so they are taking the time to properly address.
  • Bitcoin Core 0.18.0 released
  • Proposal for support of Schnorr signatures and Taproot script commitments: Pieter Wuille posted to the Bitcoin-Dev mailing list a proposed BIP for Taproot (using Schnorr signatures) and a proposed BIP for Tapscript, a small variation on Bitcoin’s current Script language to be used with Taproot encumbrances.

Zero-Knowledge

Then we’ve proceeded with the actual topic that brought us together on this particular meetup – zero-knowledge based confidential transactions with zkSNARKs. We’ve talked briefly about the history of zero knowledge proofs – from their first paper appearance at the Forum of Computer Science (FOCS) back in ’85 – invented in 1982 by three scientists – Goldwasser, Micali and Rackoff, to what turned out to be one of the most beautiful and influential concepts in computer science ever since.

Zero knowledge proofs nowadays find various practical application, such as signature schemes, protocol designs, identification schemes and more.

Blockchain Developers Meetup 10 - zkSNARKs with snarkjs and circom
Blockchain Developers Meetup 10 – zkSNARKs with snarkjs and circom

During our meetup we’ve actually focused more on zkSNARKs which stands for Zero-Knowledge Succinct Non-interactive ARgument of Knowledge, and built up a cryptographically secure on-chain (ethereum) implementation of proof, written in Solidity.

We used two libraries/tools in order for us to generate the witness (secret string for the proof) and built our proof function: snarkjs and circom.

Resources

Further read


Also published on Medium.

In This Article


    Milen
    About the author:

    Milen

    Milen Radkov has experience building and delivering successful complex software systems and projects for both big enterprises and small startups. Being actively developing across different blockchain protocols, platforms and projects for the past 5 years, he has gained extensive experience in blockchain development, architectures, consensus algorithms and token economics. Milen is a well-known figure in the blockchain space.


    More Stories

    Cover Image for Real-World Assets and the Future of DeFi

    Real-World Assets and the Future of DeFi

    Real-world assets are blockchain-based digital tokens that represent physical and traditional financial assets. The first wave of decentralized finance (DeFi) […]

    Read more
    Cover Image for Navigating Upgradable Solidity Smart Contracts: A Practical Guide

    Navigating Upgradable Solidity Smart Contracts: A Practical Guide

    In the ever-evolving landscape of blockchain technology, the concept of upgradeable smart contracts has emerged as a crucial tool for […]

    Read more

    Have a project in mind?

    We have the expertise! Drop us a line and lets talk!