A Assinatura de Schnorr é um protocolo de assinatura digital proposto por :en:Claus P. Schnorr em 1991. Trata-se de mais um protocolo baseado no problema do logaritmo discreto.

Algoritmo

O algoritmo usa uma função de resumo e operações de grupos

Geração de chaves Escolher dois primos e tais que .

Escolher um elemento gerador do grupo como subgrupo de (ou seja, ).

Escolher uma função de resumo cujo domínio seja e o contra-domínio seja .

Escolher um para ser a chave privada.

Calcular e usar como chave pública.

Assinatura Para assinar uma mensagem :

Calcular ;

Concatenar com a : ;

Calcular ;

Calcular ;

Usar como assinatura.

Verificação Para verificar uma assinatura de uma mensagem :

Calcular ;

Calcular ;

Concatenar com e calcular a função de resumo: ;

Aceitar a assinatura se é igual a .

Categoria:Algoritmos de criptografia