The standard RSA module is available as an APB peripheral, where it seamlessly integrates with EnSilica's cryptography library.
The peripheral can be configured for between 512 and 4096-bit maximum key size to keep the resource requirements as low as possible. It accelerates the most time consuming part of the RSA algorithm, notably the modular exponentiation required for both encryption and decryption using public and private keys.
RSA public key cryptography with APB interface
Overview
Key Features
- For a typical 1024-bit keysize the modular exponentiation can be performed 25 times faster than a pure software implementation. A 1024-bit message can be encrypted (public key of 65537) in 50,000 clock cycles and decrypted in 3,600,000 clock cycles. The peripheral can also be used with software support for CRT based decryption and for generating keys. Using CRT can reduce the cycle count by 1/4.
- The core is very small; when targeting TSMC90LP at 200MHz it comprises only 17k gates for the logic and an equivalent 32k gates including all memories.
Benefits
- Easy integration into an AMBA based SoC
- Small size and high performance
Deliverables
- RTL
- Testbench
- Software libraries
Technical Specifications
Foundry, Node
Any
Maturity
Silicon proven
Availability
Now
Related IPs
- RSA Public Key Cryptography Exponentiation Accelerator
- RSA Public Key Exponentiation Accelerator
- Secure-IC's Securyzr™ Tunable Public Key Cryptographic (RSA, ECDSA, SM2, Diffie-Hellman) accelerator - optional SCA protection
- RSA-ECC Public Key Accelerator Engine
- RSA-ECC Public Key Accelerator Engine
- RSA-ECC Public Key Accelerator Engine, 750K ops/sec