En criptografía , un esquema de intercambio de secretos es públicamente verificable (PVSS) si es un esquema de intercambio de secretos verificable y si cualquier parte (no solo los participantes del protocolo) puede verificar la validez de las acciones distribuidas por el distribuidor.
En el intercambio de secretos verificables (VSS), el objetivo es resistir a los actores maliciosos, como
(i) un distribuidor que envía acciones incorrectas a algunos o todos los participantes, y
(ii) participantes que envían acciones incorrectas durante el protocolo de reconstrucción, cf. [CGMA85].
En el intercambio de secretos verificables públicamente (PVSS), como lo introdujo Stadler [Sta96], es un objetivo explícito que no solo los participantes puedan verificar sus propias acciones, sino que cualquiera pueda verificar que los participantes recibieron las acciones correctas. Por lo tanto, se requiere explícitamente que (i) pueda verificarse públicamente.
— Berry Schoenmakers. Un sistema sencillo y públicamente verificable de intercambio de secretos y su aplicación a la votación electrónica.
El método presentado aquí según el artículo de Chunming Tang, Dingyi Pei, Zhuo Liu y Yong He no es interactivo y mantiene esta propiedad durante todo el protocolo.
Inicialmente
El esquema PVSS dicta un proceso de inicialización en el que:
- Se generan todos los parámetros del sistema.
- Cada participante debe tener una clave pública registrada.
Excluyendo el proceso de inicialización, el PVSS consta de dos fases:
Distribución
1. La distribución de las acciones secretas la realiza el distribuidor , que hace lo siguiente:
- El distribuidor crea para cada participante respectivamente.
- El distribuidor publica la acción cifrada para cada uno .
- El distribuidor también publica una cadena para mostrar que cada uno está encriptado.
(nota: garantiza que el protocolo de reconstrucción dará como resultado el mismo .
2. Verificación de las acciones:
- Cualquiera que conozca las claves públicas para los métodos de cifrado puede verificar los recursos compartidos.
- Si una o más verificaciones fallan, el distribuidor falla y el protocolo se cancela.
Reconstrucción
1. Descifrado de las acciones:
- Los participantes descifran su parte del secreto utilizando .
(nota: aquí se puede permitir la tolerancia a fallos: no se requiere que todos los participantes logren descifrar siempre que un conjunto calificado de participantes logre descifrar ).
- La liberación del participante más una cadena muestra que la parte liberada es correcta.
2. Puesta en común de las acciones:
- Usando las cadenas para excluir a los participantes que son deshonestos o no pudieron descifrar .
- La reconstrucción se puede realizar a partir de las acciones de cualquier conjunto calificado de participantes.
Protocolo Chaum-Pedersen
Un protocolo propuesto que demuestra :
- El probador elige un número aleatorio
- El verificador envía un desafío aleatorio
- El probador responde con
- El verificador comprueba y
Denotemos este protocolo como:
Una generalización de se denota como: donde como: y :
- El probador elige un número aleatorio y lo envía .
- El verificador envía un desafío aleatorio .
- El proverbio responde con , .
- El verificador comprueba y
El protocolo Chaum-Pedersen es un método interactivo y necesita algunas modificaciones para poder usarse de forma no interactiva: reemplazar la función hash segura elegida aleatoriamente como valor de entrada.
Referencias
- Markus, intercambio de secretos verificables públicamente
- Be1999, págs.