zero knowledge framework for c programs - how to prove correct C program execution with private inputs
pepper project does not lack private input functionality. It does support that with exo_compute method. Probably it didn't when you asked the question, but now it does. 

Check here for more details about exo_compute. Also, I have implemented in a pull-request the scenario you mentioned where a prover knows the pre-image of a hash function and he/she does not disclose it to the verifier. See here for the source code and here for more details about the PR.