#dusk $DUSK

Al revisar la documentación de Dusk, hay una parte del mecanismo de revocación de licencias de Citadel que siempre me ha quedado poco clara: después de revocar una licencia, ¿los certificados emitidos anteriormente usando esa licencia siguen siendo válidos?

Citadel emite licencias a las instituciones; en la cadena se puede consultar la titularidad, el período de validez y el estado de revocación.

La institución las usa para demostrar que cumple con los requisitos ante la parte contraria, sin tener que presentar un montón de documentos. Pero supongamos que hoy una institución obtiene una licencia para inversor acreditado, y con ella genera varios certificados. Mañana, el emisor del permiso descubre un problema y revoca la licencia.

El estado en cadena se actualiza, pero ¿los certificados que ya se emitieron siguen siendo válidos?

Si los certificados no se pueden revocar, entonces la revocación solo puede bloquear el futuro, pero no puede impedir los documentos ya filtrados.

La parte contraria podría incluso aún estar usando certificados de hace tres días para el acceso, porque durante la verificación solo se observa si el certificado en sí es válido, sin ver que la licencia ya fue revocada.

Si los certificados se pueden revocar, entonces cada certificado tendría que estar asociado individualmente a un bit/estado; durante la verificación habría que consultar si ese certificado fue revocado. Pero el diseño original de las pruebas ZK era que “no se necesiten consultas adicionales durante la verificación”; si se consulta, se revela el interés del verificador, lo que reduce la privacidad.

En la documentación de Dusk no encontré esta lógica de tratamiento en detalle. Para que el cumplimiento sea revocable y la privacidad no se pueda enlazar, Citadel pone ambas cosas en el mismo contrato: cómo escoger entre una y otra, todavía no he visto la respuesta.

@Dusk