How do zk-STARKs work?

The zk-STARK is a proof zero-knowledge proof system that, in contrast to the zk-SNARK, no longer longer relies on a trusted setup where the “toxic waste” parameters are initialized.

What are, in layman’s terms, the basic building blocks of the zk-STARK, and how do they work?