Estaba revisando las notas de diseño de medianoche nuevamente, tratando principalmente de reconciliar cómo posicionan "la propiedad de los datos" con el flujo de ejecución real. Creo que mucha gente lo reduce a "zk = privacidad", pero eso no es realmente lo que está sucediendo aquí. Es más cercano a la visibilidad controlada, donde las pruebas refuerzan lo que se puede verificar sin exponer el estado subyacente.
Una cosa que destaca es el bucle de computación fuera de la cadena + verificación en la cadena. Bastante estándar en sistemas zk, pero aquí parece estar estrechamente relacionado con datos vinculados a la identidad. Por ejemplo, un contrato podría probar la elegibilidad (digamos, la solvencia) sin revelar entradas en bruto. Eso es convincente, pero también depende en gran medida de cómo se gestionan esos anclajes de identidad... lo cual no está del todo claro.
Luego está el control de acceso a nivel de circuito. En lugar de solo validar las transiciones de estado, los circuitos definen quién puede ver las salidas. Idea poderosa, pero parece que traslada mucha responsabilidad al diseño del circuito en sí. Los errores allí no son triviales.
Tampoco estoy completamente seguro de cómo fluye NIGHT entre los actores — validadores, relayers, ¿quizás pruebas? La capa de incentivos parece implícita más que especificada.
Honestamente, lo que falta es la discusión sobre la interoperabilidad. Si estas pruebas son altamente específicas de la aplicación, la composabilidad podría verse afectada.
Y aquí está la tensión... todo esto depende de que la infraestructura zk madure lo suficientemente rápido.
Observando:
– cómo se ancla y reutiliza la identidad
– separación del rol de probador/validador
– estándares de auditoría de circuitos
– composabilidad entre aplicaciones
Aún tratando de averiguar si esto escala de manera limpia o se fragmenta rápidamente
$NIGHT @MidnightNetwork #night
