Leí este artículo: https://media.consensys.net/introduction-to-zksnarks-with-examples-3283b554fc3b
Sin embargo, no me queda claro una función como la que ya zksnarkverify
se ha implementado en Ethereum Solidity
. ¿O tenemos que implementarlo nosotros mismos?
¿Hay una API o biblioteca para usar zk-SNARK
algoritmos? tal como:
generador de claves publicas G(program C, secret lambda) -> (prover public key, verifier public key)
,
o
algoritmo probadorP(prover public key, public x, secret w) -> proof
o
algoritmo verificador V(verifier public key, public x, proof) -> true
?
donde está el programa C(public x, secret w)
C.
Lo único que está en solidez son los contratos precompilados para operaciones de curva elíptica.
Para ver las implementaciones, consulte ¿Existe un zk-SNARK descentralizado (argumento de conocimiento sucinto no interactivo de conocimiento cero)?
verifier algorithm
on-chain by Solidity
. ¿Cómo hacerlo por ZoKrates
? Según su enlace de Github : "Te ayuda a crear programas fuera de la cadena y vincularlos a la cadena de bloques de Ethereum"
ética