Why does Zcash use this zero-knowledge-scheme that uses a graph?

How is using a graph in a cryptocurrency different from verifying that someone can read a message that was encrypted with his public key?

E.g. GPG would have a commitment (public key), a challenge (a nonce encrypted with the public key) and a response (either he can reply the nonce or he cant). Why are there graphs? And what is the real real important part of ZCash (for me to understand)? I've even seen the word "redeem" in zerocash-oakland2014.pdf. ZCash solves redeeming, too? It all looks like a really complicated scheme compared to the byzantine fault tolerance scheme which I could understand.

If you could point me to an info-graphic or something important that is not many pages long, this would be really kind of you. Thanks!