Uma proposta para avaliação de criptossistemas implementados em software baseados em curvas elípticas
Resumo
recentemente a criptografia baseada em curvas elípticas (ECC) tem recebido considerável aceitação comercial, evidenciada pela sua inclusão nos padrões ANSI, IEEE, ISO e NIST, sua especificação para uso nas camadas de segurança de protocolos como ATM e WAP, bem como sua implementação em serviços como SET e IPSec. Criptossistemas baseados em curvas elípticas apresentam como principal vantagem o uso de chaves menores que aquelas empregadas em outros sistemas, como RSA por exemplo, mantendo o mesmo nível de segurança. Isto os torna interessantes para serem implementados em ambientes onde existe restrição de recursos (tempo de processamento, espaço de memória, largura de banda), como por exemplo em PDAs, telefones celulares, pagers e smart-cards. No entanto, são muitas as alternativas de implementação de ECC, desde a escolha do corpo finito aos algoritmos de aritmética modular e elíptica. Neste artigo fazemos uma análise comparativa de ECCs implementados em várias plataformas de hardware e classificamos as mesmas usando uma métrica comum, o que permite avaliar a eficiência de cada implementação independentemente de alguns fatores como frequência de clock ou nível de segurança utilizados.
Referências
M. Aydos, T. Yanic, and C . K. Koc. An elliptic curve cryptography based authentication and key agreement protocol for wireless communication. 16th Computer Security Application ConferenceCSAC'00, 2000.
Ian Blake, Gadiel Seroussi, and Nigel Smart. Elliptic Curves in Cryptography. Cambridge university press, 1999.
Erik De Win, Bart Preneel, and Michael Wiener. On the performance of signature schemes based on elliptic curves. Algorithmic Number Theory: Third International Symposium, pages 252-266, 1998.
Whiteld Diffie and Martin E. Hellman. New directions in cryptography. IEEE Transactions on Information Theory, IT-22(6):664-654, November 1976.
Taher ElGamal. A public-key cryptosystem and signature scheme based on discrete logarithms. CRYPTO'84, 1985.
Darrel Hankerson, Julio L. Hernandez, and Alfred Menezes. Software implementation of elliptic curve cryptography over binary elds. In CHES 2000. Spring-Verlag, July 2000.
Toshio Hasegawa, Junko Nakajima, and Mitsuru Matsui. A practical implematation of elliptic curve cryptosystems over prime elds on a 16-bit microcomputer. PKC'98, pages 182-194, 1998.
Institute of Electrical and Electronics Engineers, Inc. P1363 Standard Specication for public Key Cryptography, 2000.
International Standards Organization. Information Technology Security Techniques cryptographic Technics Based on Elliptic Curves, 1999. Committee Draft.
K. Itoh, M. Takenaka, N. Torh, S. Temma, and Y. Kuriara. Fast implementation of public-key cryptography on a dsp tms320c6201. CHES'99, pages 61-72, 1999.
Neal Koblitz. Elliptic curve cryptosystems. Mathematics of Computation, 48:203-209, 1987.
Julio Cesar Lopez Hernandez. Implementação Eficiente em Software de criptossistema de Curvas Elípticas. PhD thesis, UNICAMP, April 2000.
Alfred J. Menezes. Elliptic Curve Public Key Criptosystems. Kluwer Academic Publishes, 1993.
Victor Miller. Uses of elliptic curves in cryptography. CRYPTO'85, 1986.
P.L. Montegomery. Modular multiplication without trial division. Mathematics of computations 44(170):519521, 1985.
National Institute of Standards and Technology. Digital Signature Standard FIPS 186-2, February 2000.