Algoritmo de identificación de Schnorr

[1]​ El esquema requiere que una autoridad confiable, vamos a llamar TA, defina una serie de parámetros públicos para el esquema que cumplan una serie de propiedades:[2]​ Los parámetros p,q,g y t son públicos y serán usados por todas las parte en la red Cada usuario de la red escoge su

que se va a llamar clave secreta.

Para calcularla podemos aprovechar que g tiene orden q en

Para cada usuario de la red (información de identificación) la TA certificará (creando un certificado con firma digital) su clave pública.

El certificado también puede contener los parámetros p,q,g y t públicos.

[2]​ Se puede demostrar que un parámetro de seguridad t suficientemente grande evita que un impostor pueda suplantar la identidad de un usuario legítimo.

La probabilidad de que un impostor pueda suplantar es

siempre que e sea elegida de forma aleatoria.

[2]​ Se puede demostrar que el sistema propuesto verifica los requisitos de una prueba de conocimiento cero: Totalidad, solvencia y conocimiento cero.

Esto implica que el sistema es seguro bajo la suposición de la clave privada es imposible de calcular (logaritmo discreto).

, el algoritmo de identificación de Schnorr puede ser usado para probar el conocimiento del texto plano m sin revelarlo.

El protocolo primero prueba que P conoce el factor de cegado r en

es un parámetro público, si P conoce r, puede recuperar m calculando

Por tanto el protocolo también prueba que P conoce el texto plano m.[1]​