Tipos de Pruebas de Conocimiento Cero (ZKP)

Tipos de Pruebas de Conocimiento Cero (ZKP)

Las pruebas de conocimiento cero son una tecnología compleja pero bastante interesante, su razón de ser es tan importante para la privacidad, que podemos observar cómo cada vez más se va implementado en muchos proyectos.

Pero antes de seguir avanzando debemos tener claro algunos conceptos que quizás causen confusión. 

¿Qué son las pruebas de conocimiento de cero (ZKP)?

Zero-Knowledge Proof, es un protocolo criptográfico que sirve para demostrar que se es poseedor de una información específica sin revelar cuál es esa información. En otras palabras, permite demostrar que se conoce un secreto sin revelarlo.

Un ejemplo que se suele utilizar es el del parecido a un truco de magia, el mago demuestra que puede desaparecer una moneda, pero no nos revela cómo lo ha hecho.

Otro ejemplo más cercano es el de hacer una transacción y no revelar la cantidad o quien envía, pero si comprobar que la transferencia fue realizada.

Zcash es pionero en implementar ZK-SNARKs, pero ¿es lo mismo que ZKP?

Pruebas de conocimiento cero
Imagen de @ZcashAI

No, no son lo mismo. Las ZKP son como el protocolo completo y las ZK-SNARKs son una parte de él.

Es como hablar de los granos y las lentejas, los granos son un todo y las lentejas son una parte de ese todo. Entonces, se deduce que, los granos no son sólo lentejas, pero las lentejas si son granos, ¿me entiendes? Espero que si.

Igual pasa con esta tecnología, las ZKP (granos) no son solo ZK-SNARKs (lentejas) pero ZK-SNARKs si son ZKP.

Tipos de granos, no perdón… de pruebas de conocimiento cero (ZKP)

Así como los granos tienen diferentes tipos: las caraotas o arvejas; las ZKP también tienen otros tipos además de ZK-SNARKs, están: ZK-STARKs, Bulletproofs, MPC, Interactivas y NO-Interactivas entro otros más.

Breve explicación de algunas de ellas:

  • ZK-SNARKs (Zero-Knowledge Succinct Non-interactive Argument of Knowledge): Son más usadas, tienen más tiempo de desarrollo, dependen de las curvas elípticas para su seguridad, las comisiones son bajas y suele ser difícil de entender para el usuario medio. Puedes leer más sobre este tipo en el post de la zcasher Mayra.
  • ZK-STARKs: (Zero-Knowledge Succinct Transparent Argument of Knowledge): Se basa en funciones hash, tiene mayor transparencia, menor complejidad de verificación, pero la comisión es más alta.
  • Bulletproofs: Son un tipo de ZKP ligero y eficiente para verificar transacciones confidenciales. Son pruebas cortas no interactivas que no requieren una configuración de confianza. 
  • MPC (Multi-Party Computation): Permite que varias partes computen una función sin revelar información privada entre sí.

Como todo, cada tipo tiene sus ventajas y desventajas, elegir entre ellos va a depender de cuál será su aplicación específica. Algunos factores a considerar incluyen la necesidad de interactividad, la complejidad computacional, el tipo de prueba y el nivel de seguridad requerido.

Por suerte, estas decisiones no nos tocan a nosotros como usuarios, nosotros sólo haremos uso de cada proyecto que implemente esta tecnología y así podemos decidir si nos es útil o no.

Por lo general este tipo de información nos pasa desapercibida pero como buen Zcasher, debemos entender las bases de cómo está construido el ecosistema que usamos y espero haberte ayudado en ello.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Descubre más desde Zcash en Español

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo

Scroll al inicio