Escolar Documentos
Profissional Documentos
Cultura Documentos
Equipe da SE9
Aula 12
10 de Fev de 2020 1
ASSINATURAS DIGITAIS
Hash
Hash
UFRJ
STANDARDS PUBLICATION
NIST
Equipe da SE_9 10 de Fev de 2020 6
ASSINATURAS DIGITAIS
HASH
Uma função criptográfica hash tem por entrada uma mensagem de
comprimento arbitrário e uma saída de tamanho fixo.
Propriedades
Dada m, h(m) deve ser calculada com facilidade.
Dada y = h(m), deve ser computacionalmente inviável encontrar
m tal que h(m) =y
Deve ser computacionalmente inviável encontrar duas
mensagens m e n tais que h(m) = h(n).
ASSINATURAS DIGITAIS
ASSINATURAS - CARACTERÍSTICAS
ASSINATURAS - ALTERNATIVAS
ASSINATURA RSA
Processo verificação
Bob recebe (y, m)
Bob acessa (n, e) de Alice
Calcula z = ye [mod n]
Se z = m, então a assinatura é válida.
ASSINATURAS DIGITAIS
ASSINATURA ElGamal
Preparação para Alice assinar a mensagem m
Alice escolhe p, primo grande e , raiz primitiva de p; então:
Alice escolhe z (chave) tal que (1<z<p-2)
Alice calcula = z [mod p]
Chave pública (p, , )
Chave privada z
ASSINATURAS DIGITAIS
ASSINATURA ElGamal
Alice assina a mensagem
Alice escolhe 0 < k < p -1, secreto, tal que [k, p -1] = 1:
Calcula r = k [mod p]
Calcula s = k-1 (m – z.r) [mod p -1], tal que k. k-1 = 1 mod(p-1)
Mensagem assinada = (m, r, s)
ASSINATURAS DIGITAIS
ASSINATURA ElGamal
VERIFICAÇÃO
Bob recolhe (p, ) e (m, r, s)
Verifica se 0 < r < p-1
Calcula u = r . rs [mod p]
Calcula w = m [mod p]
Se w = u, então assinatura válida
EXEMPLO 2 - ElGamal
Alice mensagem m1
m1 =151405; p = 225119; α=11; z é secreto
β ≡ αz ≡ 18191 [mod p]
k secreto
r ≡ αk ≡ 164130 [mod p]
s1 ≡ k-1(m1 – z.r) ≡ 130777 [mod p]
m1 = (151405, 164130, 130777)
p-1)
ASSINATURAS DIGITAIS
EXEMPLO 2 - ElGamal
Alice mensagem m2 com mesmo k
m2 =202315; mesmo p = 225119; mesmo α=11; z é secreto
β ≡ αz ≡ 18191 [mod p]
k secreto
r ≡ αk ≡164130 [mod p]
s2 ≡ k-1(m2 – z.r) ≡ 164899 [mod p]
m2 = (202315, 164130, 164899)
p-1)
ASSINATURAS DIGITAIS
EXEMPLO 2 - ElGamal
Dedução da chave k
(s2 – s1).k = 34122.k = m2 – m1 = 50910 [mod 225118]
k pode ser 239 ou 112798
11 exp 239 = 164130 [mod 225119] e
11 exp 112798 = 59924 [mod225119]
Logo, a solução é k = 239
ASSINATURAS DIGITAIS
EXEMPLO 2 - ElGamal
Dedução da chave z
(s1).k = m1 – z.r [mod 225118]; z.r = m1 – (s1).k
164130.z = 151405 – 130777.239 [mod 225118]
164130.z = 151405 - 189419 = 187104 [mod 225118]
z = 141421
ASSINATURAS DIGITAIS
FEDERAL INFORMATION
PROCESSING STANDARDS
PUBLICATION
(DSS)
ASSINATURAS DIGITAIS
EXERCÍCIO
EXERCÍCIO