The Software RSA library provides standardized key computation, encryption, decryption, signature and verification functionalities for all key sizes up to 8192 bits. It is fully compliant with the RSA cryptosystem as defined in PKCS#1.
The Software RSA library is highly customizable: each high-level functions can be withdrawn so as to minimize the code size; the core modular exponentiation is based on the “sliding window” algorithm so that the best performance-memory tradeoff can be achieved by tuning the window size. This library embeds state-of-the-art countermeasures against side-channel attacks (SPA, DPA & DFA). Furthermore, the library performances can be significantly enhanced through the optional Public Key Cryptographic Coprocessor (PK2C).