Cryptographic Algorithms on Reconfigurable Hardwareby F. Rodríguez-Henríquez, Nazar A. Saqib, A. Díaz-Pérez and Çetin K. Koç Series on Signals and Communication Technology Springer; ISBN: 978-0-387-33883-5, 2007 |
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 a few years from now. This infrastructure is needed to carry over the legal and contractual certainty from our paper-based offices to our virtual offices existing in the cyberspace. 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. That is to say, 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 (power, electromagnetic, acoustic) channels. This book, among only a few on the subject, is a fruit of an international collaboration to design and implement cryptographic functions. The authors, who now seem to be scattered over the globe, were once together as students and professors in North America. In Oregon and Mexico City, we worked on subjects of mutual interest, designing efficient realizations of cryptographic functions in hardware and software. Cryptographic realizations in software platforms can be used for those security applications where the data traffic is not too large and thus low encryption rate is acceptable. On the other hand, hardware methods offer high speed and bandwidth, providing real-time encryption if needed. VLSI (also known as ASIC) and FPGAs are two distinct alternatives for implementing XXVI cryptographic algorithms in hardware. FPGAs offer several benefits for cryptographic algorithm implementations over VLSI, as they offer flexibility and fast time-to-market. Because they are reconfigurable, internal architectures, system parameters, lookup tables, and keys can be changed in FPGAs without much effort. Moreover, these features come with low cost and without sacrificing efficiency. This book covers computational methods, computer arithmetic algorithms, and design improvement techniques needed to obtain efficient implementations of cryptographic algorithms in FPGA reconfigurable hardware platforms. The concepts and techniques introduced in this book pay special attention to the practical aspects of reconfigurable hardware design, explain the fundamental mathematics behind the algorithms, and give comprehensive descriptions of the state-of-the-art implementation techniques. The main goal pursued in this book is to show how one can obtain high-speed cryptographic implementations on reconfigurable hardware devices without requiring prohibitive amount of hardware resources. Every book attempts to take a still picture of a moving subject and will soon need to be updated, nevertheless, it is our hope that engineers, scientists, and students will appreciate our efforts to give a glimpse of this deep and exciting world of cryptographic engineering. |
|