https://cryptovest.com/news/what-are-zk-snarks-zero-knowledge-proofs-simplified