Confidencialidade, integridade, autenticidade e não-repúdio são requisitos de segurança desejáveis em sistemas, e a criptografia assimétrica ou de chave pública é uma ferramenta indispensável para prover esses requisitos. 0 método mesmo sendo um pouco lento, é seguro pois utiliza um par de chaves, sendo uma pública e outra privada. A chave privada é conhecida apenas pelo dono da mensagem ao passo que a chave pública é distribuiria livremente para todos. A implementação dos CCE (Criptossistemas de Curvas Elípticas) apresenta alguns desafios, dentre eles o nível de segurança desejada, a qual plataforma a implementação se destina. 0 desempenho da aplicação resultante sofre um grande impacto da escolha feita nesta fase. Este artigo faz um estudo de criptografia com chave pública baseada em curvas elípticas, comparando com outros métodos de criptografia assimétrica e por sua vez com criptografia simétrica, apresentando ao final um exemplo de criptografia com curvas elípticas. (MENDES,2007)
2. Origem
De forma independente, em 1985, N. Koblitz (KOBLITZ, 1987) e V. Miller (MILLER,1986), propuseram utilizar o grupo de pontos de uma curva elíptica sobre um corpo finito para implementar criptossistemas de chave pública. Esses sistemas,denominados criptossistemas de curvas elípticas (CCE), têm sua segurança baseada na suposta intratabilidade do problema do logaritmo discreto no grupo de pontos de uma curva elíptica (PLDCE).
Figura 1 - Ilustação de uma Curva Elíptica e a adição de uma EC (BURNETT, 2002)
Nos últimos anos, muitos avanços foram feitos na área dos CCE. 0 melhor algoritmo conhecido para o problema do logaritmo discreto em curvas elípticas é de tempo exponencial (POLLARD,1978). Embora existam alguns ataques (algoritmos de tempo sub-exponencial (MENEZES, OKAMATO e VANSTONE, 1993) e polinomial para certos tipos de curvas elípticas, esses ataques podem ser evitados por meio de testes simples, descritos em vários padrões ïndustriais (ANSl,1999).
O fato de não se conhecer um algoritmo geral de tempo sub-exponencial para o PLDCE, possibilita que parâmetros menores sejam usados nos CCE, relativos aos sistemas baseados no PLD. Por exemplo, NIST - National lnstitute of Standards in Technology (Instituto Nacional de Normas em Tecnologia) recomenda o uso de chaves de 3072 bits nos sistemas baseados no PLD e RSA (Rivest, Shamir, Adleman) para se obter um nível de segurança comparável ao fornecido por um algoritmo de chave simétrica de 128 bits. Entretanto, nos CCE são suficientes chaves de 256 bits para se obter o mesmo nível de segurança.
3. Funcionalidade
Na prática, quando se deseja enviar uma mensagem utilizando o algoritmo ECDH, o remetente da mensagem pega a chave pública do destinatário contendo informações suficientes para gerar seu próprio par de chaves temporários de ECDH.
Tanto o destinatário quanto o remetente possuem um par de chaves relacionadas
com as chaves pública e privada. Desta forma o remetente utiliza a sua chave privada e a chave pública do destinatário para gerar um "ponto secreto na curva", utilizando de alguma forma este ponto secreto como uma chave de sessão. Sabendo que um ponto é uma coordenada (x,y), os dois correspondentes terão que decidir antecipadamente quais bits, a partir deste número, devem ser utilizados como chave. A figura 2 ilustra a combinação de chaves entre o remetente e o destinatário da mensagem para obter um ponto secreto.
Para ler a mensagem, o remetente necessita da chave de sessão, que é obtida através da combinação da sua chave privada com a chave pública temporária do remetente, enviada junto com a mensagem criptografada. Caso um invasor tenha acesso á mensagem criptografada, o mesmo teria que possuir uma das duas chaves privadas, pois o fato de conhecer as duas chaves públicas não resolve a questão. o algoritmo ECDH se parece com o algoritmo DH, pois ambos combinam chave pública e privada de maneira especial para gerar um segredo compartilhado. A principal diferença está na matemática subjacente, e isso explica o nome Elliptic Curve Diffie-Hellman (BURNETT, 2002).
Figura 2 - Combinação de chaves entre o remetente e destinatário de uma mensagem para obter um ponto secreto.
4. Vantagens
Algumas vantagens que resultam do fato de se usar pequenos parâmetros nos CCE incluem velocidade, chaves e certificados pequenos. Para certas aplicações, onde a capacidade de processamento, a potência computacional, o espaço de armazenamento e a banda-passante estejam limitados, os CCE superam outros sistemas de chave pública.
Por todas estas razões, os CCE têm tido crescente aceitação,nos setores industriais, como alternativa aos ja estabelecidos RSA protocolo de troca de chaves Diffie-Hellman e DSA.
A criptografia de chave pública, nos últimos anos, se converteu numa das tecnologias básicas para a construção de aplicações muito sensíveis à segurança,tais como correio eletrônico, eleições eletrônicas e comércio eletrônico.
5. Desvantagens
É um método lento porque os algoritmos, pela sua natureza matemática,são computacionalmente intensivos;
Requer uma autoridade de certificação, para que se possa garantir a identidade e ter chaves públicas confiáveis.
6. Considerações Finais
As curvas elípticas é uma opção para aplicações em ambientes computacionais limitados como telefones celulares, cartões inteligentes, pagers entre outros.
A criptografia simétrica não é substituída pela assimétrica. 0 importante é reconhecer e identificar as limitações de cada método, de forma a usá-los de uma maneira complementar para prover a segurança necessária às partes envolvidas, por causa da sua limitação de processamento.
7. Bibliográfia
BURNETT,1997 BURNETT, Steve, PAINE, Stephe, Criptografia e Segurança: O Guia Oficial RSA, Rio de Janeiro, Campus, 2002
KOBLITZ, 1987 Koblitz, N. Elliptic curve cryptosystems, Mathematics of Computation, 48 pp 203-209, 1987
MENDES,2007 Mendes, Aline Venoso, Estudo da Criptografia com chave pública baseadas com chave elípticas, Dissertação de Mestrado, Universidades de Montes Claros,2007
MENEZES,1993 MENEZES, OKAMOTO, T. E VANSTONE. Reducing elliptic curve logarithms to logarithms in a finite fiel. IEEE Transactions on Information Theory, 39 pp 1639-1946, 1993
MILLER,1986 Miller, V., Uses of elliptic curves in cryptography, Advances in Cryptology proceedings of Crypto 85, LNCS pp.417-426 New York. Springer –Verlag,1986
POLLARD,1978 POLLARD, J. Monte Carlo methods for índex computation mod p, Mathematics of Computation, 32, PP 918-924, 1978
Nenhum comentário:
Postar um comentário