I read this article: https://media.consensys.net/introduction-to-zksnarks-with-examples-3283b554fc3b
However, it's not clear to me a function such as
zksnarkverify has been already implemented in Ethereum
Solidity? Or we need to implement it by our self?
Is there an API or library to use
zk-SNARK algorithms ? such as:
public keys generator
G(program C, secret lambda) -> (prover public key, verifier public key),
P(prover public key, public x, secret w) -> proof
V(verifier public key, public x, proof) -> true ?
where program C is
C(public x, secret w).