I've been reading too much, and I still haven't found the explaination I so crave. I'm looking specifically at zk-SNARKs, as implemented by ZCash. They say they use homomorphic encryption in their non-interactive, zero-knowledge proof systems, which I am just beginning to understand, but am very fascinated with.
I've encountered quite a bit of what appears to be infinitely confusing algebra in the explaination of these systems, and would like a more word of mouth based answer.
So, in layman's terms, how would one construct a non-interactive, zero-knowledge proof system using homomorphic encryption?