Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Engenharia da Computação
IF66B – Redes de Computadores
Prof. Daniel F. Pigatto
Criptografia ECC
Bruno Clemente
Ewerton Godoi Fiel
Guilherme Furst de Souza
Curitiba, PR
07 de maio de 2018
Resumo
Nesta revisão bibliográfica será apresentado o conceito de criptografia e um
pouco de sua história e do seu papel na sociedade, explicitando e exemplificando
detalhes do processo de aplicação do método de criptografia utilizando curvas elíp-
ticas (ECC), buscando expor de maneira concisa e clara essas informações. Além de
também fazer comparações com outros métodos, ressaltando vantagens e desvanta-
gens e justificando com dados coletados de experimentos já realizados, os motivos
para a utilização deste método.
Sumário
1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 História . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1 Criptografia assimétrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Criptografia Utilizando Curvas Elípticas (ECC). . . . . . . . . . . . . . . . 5
5 Objetivos e Aplicações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
6 Vantagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6.1 Segurança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6.2 Espaço requerido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6.3 Eficiência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
7 Desvantagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
8 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Referências . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3
1 Introdução
2 História
𝑦 2 = 𝑥3 + 𝑎𝑥 + 𝑏 (3.1)
Onde, ’a’ e ’b’ pertencem ao campo K. Além disso, não pode haver fatores repetidos
o que equivale a dizer que 4𝑎3 + 27𝑏2 ̸= 0.
O campo K pode ser um dos seguintes conjuntos: R, Q, C e Z/𝑝Z. Segue abaixo
alguns exemplos de curvas elípticas definidas em diferentes campos K. A figura 3.1 mostra
para o campo R. A figura 3.2 mostra para o campo C e a figura 3.3 mostra apara o campo
Z/23Z.
1. 𝑃 + 𝑂 = 𝑂 + 𝑃 = 𝑃, ∀𝑃 ∈ 𝐸(𝐾)
𝑥𝑅 = 𝜆 2 − 𝑥𝑃 − 𝑥𝑄
𝑦𝑅 = −𝑦𝑃 + 𝜆(𝑥𝑃 − 𝑥𝑅 )
𝑦𝑄 − 𝑦𝑃
𝜆 =
𝑥𝑄 − 𝑥𝑃
𝑥𝑅 = 𝜆2 − 2𝑥𝑃
𝑦𝑅 = −𝑦𝑃 + 𝜆(𝑥𝑃 − 𝑥𝑅 )
3𝑥𝑝 2 + 𝑎
𝜆 =
2𝑦𝑃
disso, precisamos dos mesmos parâmetros públicos utilizados na troca de chave Diffe-
Hellman, 𝐷𝑝 = {𝑝, 𝑎, 𝑏, 𝐺, 𝑛, ℎ}.
Supondo que Bob deseja mandar uma mensagem para Alice. Primeiramente Alice
escolhe uma chave privada 𝑎 tal que 𝑎 ∈ N* , 𝑎 < 𝑛. Ela calcula 𝐶𝑎 = 𝑎𝐺 que será sua
chave pública e manda para Bob.
Bob também gera uma chave privada 𝑏 tal que 𝑏 ∈ N* , 𝑏 < 𝑛. Então, Bob calcula
sua chave pública 𝐶𝑏 = 𝑏𝐺. Depois, Bob pega a mensagem 𝑚 mapeada para o ponto 𝑃𝑚
pertencente a curva elíptica e calcula 𝐶 = 𝑃𝑚 + 𝑏𝐶𝑎 . Bob responde para Alice tanto 𝐶
como sua chave pública 𝐶𝑏 .
Por fim, Alice obtém a mensagem original calculando 𝐶 −𝑎𝐶𝑏 = 𝑃𝑚 +𝑏𝑎𝐺−𝑎𝑏𝐺 =
𝑃𝑚 .
Note que do mesmo jeito como ocorreu na troca de chaves Diffie-Hellman, mesmo
interceptando todas as mensagens trocadas entre Alice e Bob, Eve não consegue encontrar
a mensagem pois isso envolveria calcular o logaritmo discreto.
12
5 Objetivos e Aplicações
A criptografia utilizando curvas elípticas (ECC) foi criada com o objetivo de propor
uma técnica alternativa às criptografias RSA e DSA já existentes na época. Nos dias de
hoje, ambas as técnicas são amplamente utilizadas, muitas vezes em conjunto. (LóPEZ;
DAHAB, 2000)
As principais aplicações da ECC podem ser encontradas nos mais diversos siste-
mas e protocolos da internet. Como exemplos podemos citar: o protocolo de segurança da
camada de transporte (TLS), onde a ECC é utilizada para gerar os certificados de auten-
ticação de usuário e o segredo temporário (premaster secret) do protocolo; o protocolo de
transporte Secure Shell (SSH), onde a ECC gera as chaves de segurança que permitem
com que o protocolo torne redes inseguras em redes seguras; e as criptomoedas, onde a
ECC é responsável por gerar as chaves públicas e privadas que garantem a segurança,
privacidade e confiabilidade das transações. (CORBELLINI, 2015)
13
6 Vantagens
6.1 Segurança
Como já citado anteriormente, a ECC utiliza o método de adição de pontos, que é
computacionalmente complexo, e é baseado no problema do logaritmo discreto, aplicado
a um grupo formado pelos pontos da curva elíptica, que é um problema NP-Difícil. Essas
duas características da ECC fazem com que seja muito difícil encontrar uma forma sub-
exponencial de quebrar sua criptografia, o que já acontece com outros métodos, como o
RSA.
Dessa forma, para um mesmo nível de segurança, a ECC requer um número muito
menor de bits para realizar a encriptação. Podemos ver na tabela abaixo a relação de bits
vs o tempo de quebra da encriptação de cada um dos métodos de criptografia. (KAPOOR;
ABRAHAM; SINGH, 2008)
Figura 4: Tabela do tempo de quebra da encriptação em relação a quantidade de bits de cada método.
6.3 Eficiência
Temos que, junto ao fato da ECC fazer uso de um número menor de bits, também
é possível que o resultado de alguns resultados de cálculos da ECC podem ser guardados
previamente, sem que haja perda de nível de segurança. Isto faz com que a eficiência do mé-
todo seja muito superior, como podemos observar na tabela 6.3 (KAPOOR; ABRAHAM;
SINGH, 2008)
7 Desvantagens
∙ Apesar de ser mais eficiente que o método RSA, o método ECC ainda continua
sendo mais lento que os métodos simétricos.
∙ Precisa ocorrer uma espécie de acordo quanto a curva a ser utilizada e seus parâ-
metros.
∙ O método RSA é muito mais fácil de ser compreendido e estudado que o método
ECC.
16
8 Conclusão
Como pôde ser observado, o campo da criptografia é muito amplo e está em cons-
tante crescimento, tanto em inovações quanto em volume de utilização. Um dos frutos
desse crescimento é o método ECC, que foi abordado nesta revisão bibliográfica.
O método ECC possui um nível de segurança muito elevado como consequência
do uso de logaritmo discreto no seu processo de encriptação, o qual é considerado um pro-
blema NP-Difícil já que exige tempo exponencial para resolução, tornando a interceptação
da mensagem e a quebra da encriptação muito trabalhosa. Além disso, a ECC também
possui uma eficiência maior que outros métodos assimétricos para geração das chaves de
segurança.
Assim como qualquer outro método, a ECC possui vantagens e desvantagens,
como pode ser visto anteriormente, e ainda sim pode ser considerado vantajoso, já que a
maioria de suas desvantagens são relacionadas à complexidade, portanto existindo tempo
e capacitação na preparação de um projeto, ele é completamente viável.
17
Referências