Recuperar credenciales anónimas

1

Fondo

Un proceso de registro para adquirir una cuenta verificada anónima es así:

  • Registrante proporciona prueba de individualidad a un Registrador.
  • El registrador verifica la prueba, asegura que no haya registro previo y dirige Registrante a un Cajero.
  • Teller proporciona Registrante con credenciales de cuenta anónimas.

En este punto, el Registrante tiene una cuenta y solo una. El Registrante de aquí en adelante es un Usuario registrado (simplemente, Usuario ).

Problema

Un Usuario puede perder (accidental o deliberadamente) sus credenciales anónimas.

Pregunta

¿Cómo puedo:

  • el anonimato de la cuenta de Usuario permanece criptográficamente seguro (incluso para terceros que tienen acceso completo a la base de datos y al código fuente), por lo que no se podrá descubrir la cuenta anónima o las credenciales de registro. revelar que pertenecen al mismo individuo;
  • se evitará el registro de cuentas duplicadas; y
  • un Usuario recupera sus credenciales de cuenta perdidas (o mal ubicadas) y solo las suyas.

Pensé que el cifrado homomórfico podría ser útil aquí, pero he leído que actualmente es demasiado computacional.

Relacionado

Preguntas relacionadas:

(Si esto fuera más adecuado para Crypto SE , migre.)

    
pregunta Dave Jarvis 26.02.2015 - 21:58
fuente

1 respuesta

2
  1. El registrador verifica la identidad del usuario (en un comentario usted dijo que el usuario no es anónimo hacia el registrador). Identificación significa que cada usuario tiene algún tipo de identificador único. Ese podría ser su número de seguridad social, su nombre real + cumpleaños + lugar de nacimiento o algo así. El registrador utiliza una función hash criptográficamente segura para crear un hash a partir de ese identificador + un secreto que solo conoce el registrador.
  2. El registrador firma el hash con su clave privada para probar que generó ese hash. Luego le dan el hash + firma al usuario
  3. El usuario presenta hash + firma al cajero. El cajero verifica que la firma sea válida usando la clave pública del registrador. Luego usan el hash y otro pimiento secreto que el cajero solo conoce como entrada para crear otro hash criptográficamente seguro y luego obtiene las credenciales de los usuarios de ese hash.

Recuperando credenciales perdidas

Si el usuario pierde sus credenciales, repite el procedimiento. Su información personal no habrá cambiado, por lo que el hash del registrador será el mismo que antes, lo que significa que las credenciales generadas por el cajero basadas en el hash también serán las mismas.

Posibles vectores de ataque

El vector de ataque más grande posible en este sistema sería un registrador malicioso. Cuando el registrador es malo, podrían generar un número infinito de hash falsos y presentarlos al cajero para generar un número infinito de identidades anónimas. O podrían darles el hash de una identidad conocida para obtener las credenciales de ese usuario. Cuando el cajero conoce al registrador, el registrador aún puede hacer esto conspirando con otra persona desconocida para el cajero y usar a esa persona como un representante. Sin embargo, ya confía en que el registrador identifique a sus usuarios personalmente, por lo que debe depositar una gran cantidad de confianza en ellos de todos modos.

El potencial de abuso podría reducirse (pero no eliminarse por completo) al tener varios registradores y requerir una firma de varios. De esa manera, múltiples registradores deben conspirar para romper el sistema.

    
respondido por el Philipp 26.02.2015 - 23:11
fuente

Lea otras preguntas en las etiquetas