Consideraciones de seguridad de la combinación de zk-SNARKs y Cadena de bloques
zk-SNARKs(ZKP) como un sistema de prueba, en los últimos años ha sido ampliamente utilizado en el campo de la cadena de bloques. A medida que más protocolos de Capa 2 y cadenas públicas especiales adoptan la tecnología ZKP, la complejidad de sus sistemas también ha traído nuevos desafíos de seguridad. Este artículo abordará, desde una perspectiva de seguridad, las posibles vulnerabilidades que pueden surgir en el proceso de combinación de ZKP con la cadena de bloques, proporcionando referencias para los servicios de seguridad de proyectos relacionados.
Características clave de ZKP
Un sistema de zk-SNARKs efectivo debe cumplir simultáneamente con tres características clave:
Completitud: Para las afirmaciones verdaderas, el probador siempre puede demostrar con éxito su corrección al verificador.
Fiabilidad: en el caso de declaraciones erróneas, el probador malicioso no puede engañar al validador.
zk-SNARKs: Durante el proceso de verificación, el verificador no obtendrá ninguna información del probador sobre los datos originales.
Estas tres características determinan si el sistema es seguro y efectivo, y deben ser el foco principal durante el proceso de servicio seguro. Si no se cumple la completitud, el sistema puede entrar en un estado de denegación de servicio; si no se cumple la confiabilidad, puede surgir un problema de elusión de permisos; si no se cumple la zk-SNARKs, puede llevar a la fuga de parámetros originales, lo que a su vez puede provocar más riesgos de seguridad.
Principales preocupaciones de seguridad
Para los proyectos de cadena de bloques basados en zk-SNARKs, es necesario prestar atención a las siguientes direcciones de seguridad:
1. Circuito zk-SNARKs
Error de diseño del circuito: puede resultar en que el proceso de prueba no cumpla con las propiedades de seguridad. Por ejemplo, el error de diseño del circuito encontrado en la actualización Sapling de Zcash en 2018, podría permitir la falsificación ilimitada de tokens.
Error en la implementación de primitivas criptográficas: si hay errores en la implementación de funciones hash, algoritmos de cifrado, etc., puede afectar la seguridad de todo el sistema.
Falta de aleatoriedad: Si hay problemas en el proceso de generación de números aleatorios, puede reducir la seguridad de la prueba. Dfinity ha encontrado vulnerabilidades de este tipo.
2. Seguridad de contratos inteligentes
Además de las vulnerabilidades comunes, los contratos de proyectos ZKP son especialmente importantes en aspectos como la transferencia de activos entre cadenas y la verificación de pruebas. Las vulnerabilidades en la verificación de mensajes entre cadenas y en la verificación de pruebas afectarán directamente la fiabilidad del sistema.
3. Disponibilidad de datos
Es necesario asegurar que los datos fuera de la cadena se puedan acceder y verificar de manera segura y efectiva. Preste atención al almacenamiento de datos, mecanismos de verificación, proceso de transmisión, entre otros aspectos. En 2019, la cadena Plasma ya había presentado problemas de disponibilidad de datos, lo que impidió a los usuarios realizar transacciones normalmente.
4. Incentivos económicos
Evaluar si el mecanismo de incentivos del proyecto es razonable y si puede estimular efectivamente a las partes participantes a mantener la seguridad y estabilidad del sistema. Prestar atención al diseño del modelo de incentivos, la distribución de recompensas, los mecanismos de penalización, etc.
5. Protección de la privacidad
La implementación del esquema de privacidad del proyecto de auditoría asegura que los datos de los usuarios estén adecuadamente protegidos durante todo el proceso. Se puede inferir si la privacidad del probador se ha filtrado analizando el flujo de comunicación del protocolo.
6. Optimización del rendimiento
Evaluar los indicadores de rendimiento como la velocidad de procesamiento de transacciones y la eficiencia de verificación, y auditar si las medidas de optimización relacionadas son razonables.
7. Mecanismos de tolerancia a fallos y recuperación
Estrategias de tolerancia a fallos y recuperación del sistema de auditoría frente a fallos de red, ataques maliciosos y otras situaciones, asegurando que pueda restaurar automáticamente su funcionamiento normal.
8. Calidad del código
Auditar la calidad general del código, prestando atención a la legibilidad, mantenibilidad y robustez, evaluando si existen irregularidades o errores potenciales.
Resumen
Al evaluar la seguridad de los proyectos ZKP, es necesario determinar el enfoque según el escenario de aplicación específico (, como Layer2, monedas de privacidad, cadenas de bloques públicas, etc. ) Sin embargo, en cualquier caso, se debe garantizar que las tres características centrales de ZKP: completitud, fiabilidad y propiedad de conocimiento cero estén efectivamente protegidas. Solo considerando a fondo estos factores de seguridad se puede construir un sistema de cadena de bloques ZKP verdaderamente seguro y fiable.
Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
21 me gusta
Recompensa
21
9
Compartir
Comentar
0/400
AirdropF5Bro
· 07-07 22:03
Otra vez están haciendo pruebas de conocimiento cero, Ser engañados, ¿verdad?
Ver originalesResponder0
OnChain_Detective
· 07-07 11:48
vulnerabilidades por todas partes... mantente alerta anónimo
Ver originalesResponder0
GateUser-c802f0e8
· 07-05 07:49
Hay bastante gente que juega con zkp.
Ver originalesResponder0
ShadowStaker
· 07-05 05:52
el diseño del circuito parece muy sospechoso... otro día, otro agujero de seguridad zkp esperando a suceder smh
Ver originalesResponder0
0xOverleveraged
· 07-05 05:49
Ah sí, la privacidad también depende de zk-SNARKs.
Ver originalesResponder0
SchrodingerWallet
· 07-05 05:47
Hermano, hay muchas trampas en el conocimiento cero.
Ver originalesResponder0
NFTRegretter
· 07-05 05:39
¿Cuánto tiempo tardará en arreglarse este bug...?
Ver originalesResponder0
ChainSauceMaster
· 07-05 05:37
¿Cómo se soluciona esta vulnerabilidad? Echemos un vistazo.
Análisis de los desafíos de seguridad y las contramedidas de la combinación de ZKP y Cadena de bloques
Consideraciones de seguridad de la combinación de zk-SNARKs y Cadena de bloques
zk-SNARKs(ZKP) como un sistema de prueba, en los últimos años ha sido ampliamente utilizado en el campo de la cadena de bloques. A medida que más protocolos de Capa 2 y cadenas públicas especiales adoptan la tecnología ZKP, la complejidad de sus sistemas también ha traído nuevos desafíos de seguridad. Este artículo abordará, desde una perspectiva de seguridad, las posibles vulnerabilidades que pueden surgir en el proceso de combinación de ZKP con la cadena de bloques, proporcionando referencias para los servicios de seguridad de proyectos relacionados.
Características clave de ZKP
Un sistema de zk-SNARKs efectivo debe cumplir simultáneamente con tres características clave:
Completitud: Para las afirmaciones verdaderas, el probador siempre puede demostrar con éxito su corrección al verificador.
Fiabilidad: en el caso de declaraciones erróneas, el probador malicioso no puede engañar al validador.
zk-SNARKs: Durante el proceso de verificación, el verificador no obtendrá ninguna información del probador sobre los datos originales.
Estas tres características determinan si el sistema es seguro y efectivo, y deben ser el foco principal durante el proceso de servicio seguro. Si no se cumple la completitud, el sistema puede entrar en un estado de denegación de servicio; si no se cumple la confiabilidad, puede surgir un problema de elusión de permisos; si no se cumple la zk-SNARKs, puede llevar a la fuga de parámetros originales, lo que a su vez puede provocar más riesgos de seguridad.
Principales preocupaciones de seguridad
Para los proyectos de cadena de bloques basados en zk-SNARKs, es necesario prestar atención a las siguientes direcciones de seguridad:
1. Circuito zk-SNARKs
Error de diseño del circuito: puede resultar en que el proceso de prueba no cumpla con las propiedades de seguridad. Por ejemplo, el error de diseño del circuito encontrado en la actualización Sapling de Zcash en 2018, podría permitir la falsificación ilimitada de tokens.
Error en la implementación de primitivas criptográficas: si hay errores en la implementación de funciones hash, algoritmos de cifrado, etc., puede afectar la seguridad de todo el sistema.
Falta de aleatoriedad: Si hay problemas en el proceso de generación de números aleatorios, puede reducir la seguridad de la prueba. Dfinity ha encontrado vulnerabilidades de este tipo.
2. Seguridad de contratos inteligentes
Además de las vulnerabilidades comunes, los contratos de proyectos ZKP son especialmente importantes en aspectos como la transferencia de activos entre cadenas y la verificación de pruebas. Las vulnerabilidades en la verificación de mensajes entre cadenas y en la verificación de pruebas afectarán directamente la fiabilidad del sistema.
3. Disponibilidad de datos
Es necesario asegurar que los datos fuera de la cadena se puedan acceder y verificar de manera segura y efectiva. Preste atención al almacenamiento de datos, mecanismos de verificación, proceso de transmisión, entre otros aspectos. En 2019, la cadena Plasma ya había presentado problemas de disponibilidad de datos, lo que impidió a los usuarios realizar transacciones normalmente.
4. Incentivos económicos
Evaluar si el mecanismo de incentivos del proyecto es razonable y si puede estimular efectivamente a las partes participantes a mantener la seguridad y estabilidad del sistema. Prestar atención al diseño del modelo de incentivos, la distribución de recompensas, los mecanismos de penalización, etc.
5. Protección de la privacidad
La implementación del esquema de privacidad del proyecto de auditoría asegura que los datos de los usuarios estén adecuadamente protegidos durante todo el proceso. Se puede inferir si la privacidad del probador se ha filtrado analizando el flujo de comunicación del protocolo.
6. Optimización del rendimiento
Evaluar los indicadores de rendimiento como la velocidad de procesamiento de transacciones y la eficiencia de verificación, y auditar si las medidas de optimización relacionadas son razonables.
7. Mecanismos de tolerancia a fallos y recuperación
Estrategias de tolerancia a fallos y recuperación del sistema de auditoría frente a fallos de red, ataques maliciosos y otras situaciones, asegurando que pueda restaurar automáticamente su funcionamiento normal.
8. Calidad del código
Auditar la calidad general del código, prestando atención a la legibilidad, mantenibilidad y robustez, evaluando si existen irregularidades o errores potenciales.
Resumen
Al evaluar la seguridad de los proyectos ZKP, es necesario determinar el enfoque según el escenario de aplicación específico (, como Layer2, monedas de privacidad, cadenas de bloques públicas, etc. ) Sin embargo, en cualquier caso, se debe garantizar que las tres características centrales de ZKP: completitud, fiabilidad y propiedad de conocimiento cero estén efectivamente protegidas. Solo considerando a fondo estos factores de seguridad se puede construir un sistema de cadena de bloques ZKP verdaderamente seguro y fiable.