Çetin Kaya Koç
University of California at Santa Barbara, Santa Barbara,USA
Date of the course: June 13-17, 2016
Schedule of the classes: h. 14.00 - 18.00.
june 13, 14, 15 aula 101
june 16,17 aula 149
Duration of the course: 20 hours
Cryptography provides techniques, mechanisms, and tools for private and authenticated communication, and for performing secure and authenticated transactions over the Internet as well as other open networks. It is highly probable that each bit of information flowing through our networks will have to be either encrypted and decrypted or signed and authenticated in the near future. In such an environment, server and client computers as well as handheld, portable, and wireless devices will have to be capable of encrypting or decrypting and signing or verifying messages. Without exception, all networked computers and devices must have cryptographic layers implemented, and must be able to access to cryptographic functions in order to provide security features. In this context, efficient (in terms of time, area, and power consumption) hardware structures will have to be designed, implemented, and deployed. Furthermore, general-purpose (platform-independent) as well as special-purpose software implementing cryptographic functions on embedded devices are needed. An additional challenge is that these implementations should be done in such a way to resist cryptanalytic attacks launched against them by adversaries having access to primary (communication) and secondary (timing, power, electromagnetic, acoustic) channels. This course is designed for computer science, computer engineering, electrical engineering, and mathematics students interested in understanding, modeling, designing, developing, testing, and validating cryptographic algorithms, protocols, and implementations. We study algorithms, methods, and techniques in order to create state-of-the-art cryptographic embedded software and hardware using common platforms and technologies.