Implementação Eficiente e Segura de Algoritmos Criptográficos
Abstract
Software implementation of a cryptographic algorithm is not an easy task even for advanced programmers, because it requires a careful knowledge not only about algorithms but also of the target architecture. In this tutorial, we will describe some techniques to produce an efficient and secure software implementation. For the sake of efficiency, we will detail how advanced vector instruction sets accelerate the execution of the following cryptographic algorithms: the AES encryption algorithm, the SHA-3 cryptographic hash function and the key agreement protocol based on the elliptic curve Curve25519. Focusing on the secure software development, we will illustrate some implementations that are vulnerable against side-channel attacks; also we will present some countermeasures that mitigate such attacks thereby preventing leakage of secret information
Citation
@incollection{faz_sbseg2015,
author = {Armando Faz-Hernández and Roberto Cabral and Diego F. Aranha and Julio López},
title = {Implementação Eficiente e Segura de Algoritmos Criptográficos},
booktitle = {Minicursos do Simpósio Brasileiro de Segurança da Informação e de Sistemas Computacionais},
publisher = {Sociedade Brasileira de Computação},
address = {Florianópolis, SC, Brasil},
editor = {Eduardo Souto and Michelle Wangham and Joni Fraga},
chapter = {3},
doi = {10.5753/sbc.9004.8.3},
isbn = {978-85-7669-304-8},
language = {pt},
year = {2015},
month = {nov},
pages = {93--140},
volume = {183}
}