9 - Arithmetic Software Libraries
from Part II - Implementations
Published online by Cambridge University Press: 11 November 2021
Summary
In Chapter 9, Arithmetic Software Libraries, Victor Shoup provides a peek under the hood of NTL, a software library for doing number theory, as well as its relation to a few other related software libraries. NTL supports data structures and arithmetic operations manipulating signed, arbitrary-length integers, as well as extensions dealing with vectors, matrices, finite fields and polynomials over the integers. These mathematical objects are essential building blocks for any efficient cryptologic implementation. As Shoup explains, he started development of NTL around 1990 in order to implement novel number-theoretic algorithms and determine at what point theoretical, asymptotic gains turned practical. NTL has become an essential tool for number-theoretic cryptanalysis to answer how well algorithms perform in practice and contains several algorithms' lattice-basis reduction, including LLL. As explained in Chapter 9, NTL might have been initially based on FreeLIP, but it continues to evolve to make best use of GMP and modern hardware to provide cutting-edge performance.
- Type
- Chapter
- Information
- Computational CryptographyAlgorithmic Aspects of Cryptology, pp. 251 - 292Publisher: Cambridge University PressPrint publication year: 2021